】奖项颁发【
废话不说,直接看题——
题目描述
最近,全国第88届信息学奥林匹克竞赛顺利结束。本次竞赛共有n名参赛者,每个人都获得了一定的分数。作为本次比赛的负责人,你将根据以下标准颁布奖状:·至少有一个人会获得奖状·得分为0的人不能获得奖状·当有一个人获得奖状后,分数不低于他的人也必须获得奖状接下来,请你确定,有多少种颁发奖状的方案,并输出可能的方案数。输入格式
第一行一个数字n(1≤n≤100),表示参加比赛的人数。接下来一行包含n个整数a1,a2,……,an(0≤ai≤600),表示第i个人获得的分数输入保证至少有一个人得分不为0。样例1号
样例输入:4 1 3 3 2样例输出:3~~对不起没有2号
读完题我不禁感叹一句:得个奖这么简单!!!
奖,能有我的香
1.至少有 1 个人有奖状,
2.得分为 0 的人没有奖状,
3.有人获得奖状后,分数不低于他的人也得有奖状。
这不就是算有多少不同的分数(除 0 分外)吗?
na~的影子不就浮现了吗,
给代码:
#include <bits/stdc++.h> using namespace std; int main(){int n, a[100];int s = 0;bool v[601] = {};cin >> n;for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++){if (a[i] != 0 && v[a[i]] == false){v[a[i]] = true;s++;}}cout << s;return 0-0; }
点个赞再走吧!
总结
- 上一篇: 制作自定义字体
- 下一篇: linux font 安装等