原始题目
2183: 击鼓传花简单版
- Time Limit: 1 Sec
- Memory Limit: 128 Mb
- Submitted: 165
- Solved: 41
Description
岳麓山下旌旗卷,CSU运动会隆重开幕了,小Q所在的班级参加了“击鼓传花”趣味比赛。
比赛规则如下,\(n\)个队员(不包括小Q)围成一个圈,每个人手里拿着一些花束(数量也可能为0),小Q站在圆圈的中间,队员需要传递花束给小Q,每个鼓点只允许一个人传送一束花,最终要求圆圈上所有人的花束都传递给小Q。请问需要花多少鼓点呢? ### Input 多组数据。
第一行\(n\),代表队员数量。
第2行到第\(n+1\)行,每行一个整数\(a_i\),代表每个队员最开始拿的花束数量。\((0 ≤ a_i ≤ {10}^{6})\) 所有组的n之和不超过 $ {10}^{3} $
Output
一个整数,代表需要的鼓点数。
4
1
2
5
4
Sample Output
12
Hint
Source
题目大意
如题
解题思路
求和,注意long long。
解题代码
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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| #include <cstdio> #include <cstring> #include <iostream> #include <set> #include <queue> #include <stack> #include <vector> #include <bits/stdc++.h> using namespace std; const int maxn=1e5+5; const int maxm=1e5+5;
#define rep(i,a,n) for(int i=a;i<n;++i) #define per(i,a,n) for(int i=n-1;i>=a;--i) #define fi first #define se second #define pb push_back #define np next_permutation #define mp make_pair
#define INF 0x3f3f3f3f #define EPS 1e-8
typedef long long ll; typedef unsigned long long ull;
typedef vector<int> vi; typedef pair<int, int> pii; typedef pair<string,string> pss;
int main(){ ios::sync_with_stdio(false); ll sum=0; int n; while(cin>>n){ int temp; sum=0; rep(i,0,n){ cin>>temp; sum+=temp; }
cout<< sum<<endl;
}
}
|
收获与反思
注意long long。