ブロック--cf1207F

そこで問題は、そう長くのための吸盤のようでした

メンテナンスプロ配列を持つ配列は、B [i]には、[j]はiが= jは[POS]和であるのPOS%を示し

各変更XY 1、直接、[X]を変更し、I = 1..700は、[I X%] [i]とBを変更列挙するための

各クエリ2 XYは、X> 700ならば、我々は、列挙アレイiが= KX + yに直接行きます、

X <700、bは、[X] [Y]は答えがある場合

#include <ビット/ STDC ++ H>
 使用して 名前空間STDを、
#define N 500005
 の#defineっ長い長い
[N] LL、B [ 705 ] [ 705 ]。
int型Q;
INT メイン(){ 
    CIN >> Q。
    一方、(q-- ){
         int型のOP、X、Y。
        scanf関数(" %D%D%D "、&​​OP、およびX&Y)。
        もし(OPの== 1 ){ 
            [X] + = Y。
            以下のためにint型 = Iを1 ; I <=700 ; iは++ 
                B [i]は、[X%I] + = Y。
        } 
        もし(オペアンプ== 2 ){ 
            LL ANS = 0 場合(X> 700 ){
                 ためint型 iは= yと; iは= < 500000を、I + = X)
                    ANS + = [I]。
            } 
            のANS =のB [X] [Y]。
            coutの << ANS << てendl; 
        } 
    } 
}

 

おすすめ

転載: www.cnblogs.com/zsben991126/p/11511455.html