问题 C: 【百题】【提高】洋洋算排名
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:58
解决:24
题目描述
洋洋很关心自己在学校的表现。
班主任手上有一本“个人得分记录本”,如果一位同学表现好就会加分,表现差则会扣分。学期结束,每位同学都得知了自己的个人得分。洋洋想知道其他同学情况如何,但由于排名不公布,他只好一个个去问班里的其他同学。
现在,洋洋手上有班里共N位同学的个人得分,他想知道每位同学的排名 (得分相同则排名相同,见样例),可并不知道该如何计算,希望你帮帮他。
班主任手上有一本“个人得分记录本”,如果一位同学表现好就会加分,表现差则会扣分。学期结束,每位同学都得知了自己的个人得分。洋洋想知道其他同学情况如何,但由于排名不公布,他只好一个个去问班里的其他同学。
现在,洋洋手上有班里共N位同学的个人得分,他想知道每位同学的排名 (得分相同则排名相同,见样例),可并不知道该如何计算,希望你帮帮他。
输入
第一行包含一个整数N。
接下来N行,第i行包含一个整数Ai,表示第i位同学的得分。
接下来N行,第i行包含一个整数Ai,表示第i位同学的得分。
输出
N行,第i行包含一个整数,表示第i位同学的排名。
由于本题读入、输出的数据较多,C++选手请使用scanf和printf 替代 cin和cout 提升读写效率。
由于本题读入、输出的数据较多,C++选手请使用scanf和printf 替代 cin和cout 提升读写效率。
样例输入 复制
5
95
100
99
99
96
样例输出 复制
5
1
2
2
4
提示
数据范围
对于30%的数据,N≤10。
对于60%的数据,N≤1000。
对于 100%的数据,1≤N≤100000,0≤Ai≤100000。
来源
常州市2015“信息与未来”夏令营选拔赛
提示:
法一:排序,二分查找右边界(根据排序规则而定) 不能左边界,为什么自己想
法二:桶排序
法三:lower_bound
法四:map
对于30%的数据,N≤10。
对于60%的数据,N≤1000。
对于 100%的数据,1≤N≤100000,0≤Ai≤100000。
来源
常州市2015“信息与未来”夏令营选拔赛
提示:
法一:排序,二分查找右边界(根据排序规则而定) 不能左边界,为什么自己想
法二:桶排序
法三:lower_bound
法四:map