zcmu1777 尋找倍數 抽屜原理

2021-08-29 01:52:22 字數 612 閱讀 7974

給出n(n<=10000)個正整數,每個數xi<=15000.可以在這個n個數中選擇一些數出來,至少選擇乙個,是否存在一種選擇方案使得選擇出

來的數的和是n的整數倍

第一行乙個t(t<=500),第二行乙個數n,接下來n個正整數

case #x: y,其中x是測試編號,從1開始,y表示答案,如果存在y為yes,否則為no

2 5 1 2 3 4 1 2 1 2

case #1: yes case #2: yes

解題思路:這題我沒想到抽屜原理,沒想到。。。

s1=a1,s2=a1+a2,s3=a1+a2+a3,......sn=a1+a2+...+an

如果在這n個和s1,s2,sn中,存在乙個數是n的倍數,那肯定是yes。如果在n個和s1,s2...sn中,沒有乙個是n的倍數的數,那麼它們被n除所得的餘數只可能是1,2,n-1共n-1種情況,但由於s1,s2,sn共有n個數,從而根據抽屜原理,必然存在兩個數它們被n除的餘數相同。那這2個餘數相同的相減肯定是能整除n的。

#includeusing namespace std;

int main(void)

return 0;

}

zcmu 1777 尋找倍數(抽屜原理)

題目 time limit 1 sec memory limit 128 mb submit 230 solved 135 submit status web board 給出n n 10000 個正整數,每個數xi 15000.可以在這個n個數中選擇一些數出來,至少選擇乙個,是否存在一種選擇方案使...

1777 尋找整數

1777 尋找整數 時間限制 1000 ms 記憶體限制 262144 kb 題目描述 給定整數m,k,求出正整數n使得n 1,n 2,2n 中恰好有m個數在二進位制下恰好有k個1。有多組資料。輸入 第一行乙個整數 t表示資料組數。接下來 t 行每行兩個整數m,k。輸出 每組資料輸出一行兩個整數,第...

ZCMU1907 k倍區間(字首和)

題目鏈結 time limit 1 sec memory limit 128 mb submit 146 solved 44 submit status web board 給定乙個長度為n的數列,a1,a2,an,如果其中一段連續的子串行ai,ai 1,aj i j 之和是k的倍數,我們就稱這個區...