zzuoj1879: 蛤玮买好了礼物
2016-05-04 10:52
295 查看
1879: 蛤玮买好了礼物
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 472 Solved: 180
SubmitStatusWeb
Board
Description
蛤玮的妹子过生日,蛤玮把千辛万苦挑选出来的礼物送到了妹子面前,然而妹子非常生气,因为妹子要的是化妆套装,而蛤玮买了一套水彩铅笔,更可气的是这些铅笔像是二手的,因为他们不是一样长!为了惩罚蛤玮,妹子说"我有强迫症,受不了这些铅笔不一样长,你快去搞定它!不然就买化妆套给我!".
还好,这些铅笔的长度都是整数,蛤玮灵机一动,可以把些铅笔掰断使得它们可以一样长,当然要保证铅笔尽可能的长。 那么当这些铅笔最终一样长的时候,一共有多少支铅笔?
Input
T(1<=T<=100),表示数据组数.每组数据第一行一个整数n(1<=n<=100),表示蛤玮买来的铅笔个数,接下来一行n个整数,表示n个铅笔的长度.保证长度都为正整数且小于1e7.
Output
每组数据输出一行,表示最终的铅笔个数.Sample Input
222 334 6 14Sample Output
512HINT
对于第一个输入,最终掰成了5个长度为1的铅笔,第二个输入,最终掰成了12个长度为2的铅笔。提议分析:寻找最大公约数,原本感觉会超时,没想到测试数据好水,并没有
#include <iostream> #include <algorithm> #include <cstdio> #include <cstring> using namespace std; int a[105]; int main() { int t; scanf("%d",&t); while(t--) { int n; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d",&a[i]); } sort(a,a+n); int flag; int x; for(int i=a[0];i>=1;i--) { flag=0; for(int j=0;j<n;j++) { if(a[j]%i!=0) { flag=1; break; } } if(flag) continue; else { x=i; break; } } int sum=0; for(int i=0;i<n;i++) { sum+=a[i]/x; } printf("%d\n",sum); } return 0; }
相关文章推荐
- 4月29日 例2
- 策略模式 VS 桥梁模式
- 二叉排序树的查找、插入和删除
- 第93课:Spark Streaming updateStateByKey案例实战和内幕源码解密
- android openOrCreateDatabase
- java io的笔记
- 56-Remove Linked List Elements
- Java 数组
- 第3课:SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶之Job和容错
- 编码中几种常见问题分析
- 在windows上安装ubutnu双系统,并且利用easybcd设置开机双启动项 并按照sougou输入法
- 百度地图小试用
- 机器学习十大算法系列(一)——逻辑回归
- init?(coder aDecoder: NSCoder)
- boost::mutex的最简单的例子
- IT十八掌课程体系SPARK知识点总结
- xcode运行到真机报错 图片问题
- Nginx反向代理
- spring整合cxf 客户端+服务端
- NYOJ 19 擅长排列的小明