回到 CPE 必考一顆星 49 題選集
UVa 10050 Hartals
( Tip: 點擊左上方的三橫槓選單按鈕,可以收起左側 Pdf 頁。)
Step 1. 題目概要
- 輸入第一行有一個整數
T
,代表有T組測資。
- 每組測資第一行包含一個整數
N
(7 ≤ N ≤ 3650),N代表模擬的天數。
- 下一行包含一個整數
P
(1 ≤ P ≤ 100),表示有幾個政黨。
- 接下來的P行,第i行包含一個正整數
hi(永遠不會是7的倍數)
,代表第i個政黨的罷會參數。
Step 2. 解題思路
1 2 3 4 5 6 7 8 9 10 11 12
| 2 14 3 3 4 8 100 4 12 15 25 40
|
Step 4. 參考程式碼 - Accepted Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| #include <bits/stdc++.h> using namespace std; int main() { int T, D, P; cin>>T; while(T--) { cin>>D; cin>>P; int h[105]; for(int i=0; i<P; i++) cin>>h[i];
int table[3655]={0},k; for(int i=0; i<P; i++) { k=1; for(int j=h[i];j<=D;j=h[i]*k) { if(j%7!=6 && j%7!=0) table[j]=1; k++; } }
int cnt=0; for(int i=1; i<=D; i++) { if(table[i]==1) cnt++; } cout<<cnt<<"\n"; } return 0; }
|
回到 CPE 必考一顆星 49 題選集