Atcoder Beginner 065 – C 解题报告
2018-03-27 12:35
351 查看
1.题意:在几个分数段,分别有不同的气球颜色,而 >=3200 这个区间,可以选择任意颜色,问最多和最少呈现的颜色。2.思路:首先开一个res数组,根据输入分数的区间,对res数组赋值,模拟气球颜色。接着把 >=3200 的这段特殊区间隔离开,开一个flag标记数组,令cnt = 0计数,找过的区间段用flag标记,不再进行颜色个数cnt的累加,这样得到的cnt是,除去 >=3200 这段区间的分数外,气球颜色的计数。接着对>= 3200的分数计数,如果所有分数都>=3200,那最大值就是分数数组元素个数,最小值就是1,否则,最大值就是刚才的cnt加上>=3200元素个数,最小值就是cnt。3.代码:#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>#include <algorithm>using namespace std;int n;int minx, maxx;int a[122];int res[122];bool flg[122]; int main() { while(~scanf("%d",&n)) { memset(flg, 0,sizeof(flg)); memset(a, 0, sizeof(a)); memset(res, 0,sizeof(res)); int cnt = 0; for(int i = 1; i <= n;i++) scanf("%d", &a[i]); for(int i = 1; i <= n;i++) { if(a[i] >= 1&& a[i] <= 399) res[i] = 1; else if(a[i] >=400 && a[i] <= 799) res[i] = 2; else if(a[i] >=800 && a[i] <= 1199) res[i] = 3; else if(a[i] >=1200 && a[i] <= 1599) res[i] = 4; else if(a[i] >=1600 && a[i] <= 1999) res[i] = 5; else if(a[i] >=2000 && a[i] <= 2399) res[i] = 6; else if(a[i] >=2400 && a[i] <= 2799) res[i] = 7; else if(a[i] >=2800 && a[i] <= 3199) res[i] = 8; else res[i] = 9; } for(int i = 1; i <= n;i++) { if(res[i] != 9&& flg[res[i]] == 0) { flg[res[i]] =1; cnt++; } } int c = 0; for(int i = 1; i <= n;i++) { if(res[i] == 9) c++; } if(c == n) minx = 1; else minx = cnt; int t = 0; for(int i = 1; i <= n;i++){ if(res[i] == 9) t++; } maxx = cnt + t; printf("%d%d\n", minx, maxx); }}
相关文章推荐
- Atcoder Beginner 090-C 解题报告
- 2018.3.28【 AtCoder beginner092-C 】解题报告(线性处理)
- Atcoder Beginner 092 – C 解题报告
- 2018.1.29【 AtCoder Beginner Contest 087-D 】解题报告(TLE)(STL,队列)
- 2018.1.29【 AtCoder Beginner Contest 087-C 】解题报告(简单dp)
- 《训练指南》DP::beginner解题报告
- AtCoder Tenka1 Programmer Beginner Contest 解题报告
- [置顶] 刘汝佳《训练指南》动态规划::Beginner (25题)解题报告汇总
- 刘汝佳《训练指南》动态规划::Beginner (25题)解题报告汇总
- SPOJ GSS系列 解题报告
- [Leetcode] 600. Non-negative Integers without Consecutive Ones 解题报告
- 赛码解题报告(四)
- NOIP2007解题报告
- 华工腾讯俱乐部新生练习赛(二)解题报告
- LeetCode 384. Shuffle an Array 解题报告
- 2011.10.23 poj1423Big Number 伪解题报告
- 0924解题报告
- 北邮暑假训练7解题报告
- 解题报告 化学(即 USACO 5.3.1)
- [Leetcode] 168. Excel Sheet Column Title 解题报告