CCF 201709 5 除法 c 題解

2021-08-17 03:47:44 字數 1557 閱讀 1949

問題描述

試題編號:

201709-5

試題名稱:

除法時間限制:

10.0s

記憶體限制:

256.0mb

問題描述:

問題描述

小蔥喜歡除法,所以他給了你

n個數a

1,  a

2, ⋯, 

an,並且希望你執行

m次操作,每次操作可能有以下兩種:

給你三個數

l, r, 

v,你需要將

al,  al

+1, ⋯, 

ar之間所有

v的倍數除以

v。給你兩個數

l, r,你需要回答

al+  al

+1 + ⋯ + 

ar的值是多少。

輸入格式

第一行兩個整數

n, m,代表數的個數和操作的次數。

接下來一行

n個整數,代表

n個數一開始的值。

接下來 m行,每行代表依次操作。每行開始有乙個整數

opt。如果

opt=1,那麼接下來有三個數

l, r, 

v,代表這次操作需要將第

l個數到第

r個數中

v的倍數除以

v;如果

opt = 2,那麼接下來有兩個數

l, r,代表你需要回答第

l個數到第

r個數的和。

輸出格式

對於每一次的第二種操作,輸出一行代表這次操作所詢問的值。

樣例輸入

5 3

1 2 3 4 5

2 1 5

1 1 3 2

2 1 5

樣例輸出

15

14

評測用例規模與約定

對於30%的評測用例,1 ≤ 

n, m ≤ 1000;

對於另外20%的評測用例,第一種操作中一定有

l = 

r;對於另外20%的評測用例,第一種操作中一定有

l = 1 , 

r = 

n;對於100%的評測用例,1 ≤ 

n, m ≤ 10

5,0 ≤ 

a1,  a

2, ⋯, 

an≤ 10

6, 1 ≤ 

v ≤ 10

6, 1 ≤ 

l ≤ 

r ≤ 

n。

#includeusing namespace std;

int main()

int flag=0;

for(int j=0;j>h;

for(int j1=0;j1<4-h;j1++)

cin>>b[j1];

if(h==1)

} else if(h==2)

c[flag]=tol;

flag++;

} }for(int i2=0;i2cout<}

python實現 CCF201709 5 除法

試題編號 201709 5 試題名稱 除法時間限制 10.0s 記憶體限制 256.0mb 問題描述 問題描述 小蔥喜歡除法,所以他給了你n個數a1,a2,an,並且希望你執行m次操作,每次操作可能有以下兩種 給你三個數l,r,v,你需要將al,al 1,ar之間所有v的倍數除以v。給你兩個數l,r...

CCF201709 5(樹狀陣列單點更新區間求和)

問題描述 小蔥喜歡除法,所以他給了你n個數a1,a2,an,並且希望你執行m次操作,每次操作可能有以下兩種 給你三個數l,r,v,你需要將al,al 1,ar之間所有v的倍數除以v。給你兩個數l,r,你需要回答al al 1 ar的值是多少。輸入格式 第一行兩個整數n,m,代表數的個數和操作的次數。...

ccf 最小差值 C 題解

試題編號 201712 1 試題名稱 最小差值 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 給定n個數,請找出其中相差 差的絕對值 最小的兩個數,輸出它們的差值的絕對值。輸入格式 輸入第一行包含乙個整數n。第二行包含n個正整數,相鄰整數之間使用乙個空格分隔。輸出格式 輸出乙個...