codeforces 389A. Fox and Number Game
来源:互联网 发布:家具导购软件 编辑:程序博客网 时间:2024/05/18 02:53
题目链接[CF 389A.] (http://codeforces.com/problemset/problem/389/A):
题目描述:
A. Fox and Number Game
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
Fox Ciel is playing a game with numbers now.
Ciel has n positive integers: x1, x2, …, xn. She can do the following operation as many times as needed: select two different indexes i and j such that xi > xj hold, and then apply assignment xi = xi - xj. The goal is to make the sum of all numbers as small as possible.
Please help Ciel to find this minimal sum.
Input
The first line contains an integer n (2 ≤ n ≤ 100). Then the second line contains n integers: x1, x2, …, xn (1 ≤ xi ≤ 100).
Output
Output a single integer — the required minimal sum.
Sample test(s)
input
2
1 2
output
2
input
3
2 4 6
output
6
input
2
12 18
output
12
input
5
45 12 27 30 18
output
15
Note
In the first example the optimal way is to do the assignment: x2 = x2 - x1.
In the second example the optimal sequence of operations is: x3 = x3 - x2, x2 = x2 - x1.
言简意赅:
此题题意为可以连续多次利用ai=ai-aj,直到把ai中的每一个数变成最小且相等时,既满足题意中的条件不再能进行操作了,所以可以借助于直接暴力的代码进行实现.
#include <iostream>#include <cstdio>#include <algorithm>using namespace std;int a[105];int main(){ int n; int flag; while(scanf("%d",&n)!=EOF) { flag=0; for(int i=0;i<n;i++) { scanf("%d",&a[i]); } while(1) { sort(a,a+n,greater<int>()); flag=0; for(int i=0;i<n-1;i++) { if(a[i]>a[i+1]) a[i]=a[i]-a[i+1]; else flag++; } if(flag==n-1) break; } printf("%d\n",n*a[0]); } return 0;}
当然此题的本意可以简化为要去求解所有数的最大公约数的问题,代码实现如下:
#include <iostream>#include <cstdio>#include <algorithm>using namespace std;int gcd(int a,int b){ if(!b) return a; else return gcd(b,a%b);}int a[105];int main(){ int n; int k; while(scanf("%d",&n)!=EOF) { for(int i=0; i<n; i++) { scanf("%d",&a[i]); } k=gcd(a[0],a[1]); for(int i=2; i<n; i++) { k=gcd(k,a[i]); } printf("%d\n",n*k); } return 0;}
如果代码还不能A掉,那就不能去睡觉。
- Codeforces 389A Fox and Number Game
- CodeForces 389A Fox and Number Game
- codeforces 389A Fox and Number Game
- codeforces 389A. Fox and Number Game
- codeforces A. Fox and Number Game
- Codeforces 389A Fox and Number Game(贪心)
- codeforces Fox and Number Game
- 389-A Fox and Number Game
- CF 389A:Fox and Number Game
- A. Fox and Number Game
- Codeforces Round #228 (Div. 2) A. Fox and Number Game
- Codeforces Round #228 (Div. 2)A.Fox and Number Game
- Codeforces Round #228 (Div. 2)A. Fox and Number Game
- Codeforces 389A Fox and Number Game(欧几里得求最大公约数)
- codeforces 389A(Fox and Number Game) 简单的欧几里德算法 Java
- Fox and Number Game
- Codeforces Round #228 (Div. 2), problem: (A) Fox and Number Game
- Codeforces Round #228 (Div. 2) A - Fox and Number Game(水题)
- MapReduce的输入输出格式原理和优化
- 一句话修改字体颜色,大小,用spannableString
- 圆环形的progressBar进度条的Demo下载
- 使用Fiddler配合Genymotion调试安卓应用
- amd机器升级到mac os x 10.10.5
- codeforces 389A. Fox and Number Game
- Alitum Designer 如何查找没有 封装 的 元件
- JS处理时间问题
- ant变量作用域
- ADS 2014.01 win7 64bit破解+详细破解说明
- Android——使用Http的get方式获取数据
- 流媒体:搭建HTTP Live Streaming直播系统
- 十,碰撞测试类
- scrollview滑动控制