题目描述

C国和W国爆发了战争!YJC决定对W国的n个城市进行轰炸。每个城市都有一个重要度ai。设xi=‘重要度大于ai的城市数+1’,那么编号为i城市就是第xi个被轰炸的城市。显然这样能保证重要度大的城市先被轰炸,重要度相同的城市同时被轰炸。现在YJC想知道,对于每一个i,xi等于多少?

输入输出格式

输入格式:

第一行包含一个整数n,表示城市个数。

第二行包含n个整数,第i个整数ai表示第i个城市的重要度。

输出格式:

一行,包含n个整数,第i个整数xi表示第i个城市是第几个被轰炸的城市。

输入输出样例

输入样例#1:

5
3 1 3 1 1
输出样例#1:

1 3 1 3 3

说明

对于100%的数据,满足1≤n≤2000,1≤ai≤10^9。

分析:noipd1t1难度,直接排序判个重就好了.

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <queue>
#include <stack>
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <string> using namespace std; int n,ans[]; struct node
{
int x, id;
}e[]; bool cmp(node a, node b)
{
return a.x > b.x;
} int main()
{
scanf("%d", &n);
for (int i = ; i <= n; i++)
{
scanf("%d", &e[i].x);
e[i].id = i;
}
sort(e + , e + + n, cmp);
for (int i = ; i <= n; i++)
{
ans[e[i].id] = i;
for (int j = i - ; j >= ; j--)
if (e[j].x == e[i].x)
ans[e[i].id]--;
}
for (int i = ; i <= n; i++)
printf("%d ", ans[i]); return ;
}

最新文章

  1. 常用Meta整理
  2. LESS 学习记录(简单入门)
  3. Asus ubuntu Fn恢复
  4. node的passport.js验证
  5. JS之路——数组对象
  6. mysql错误:Error Code: 1175. You are using safe update mode and you tried to update a table……
  7. Android ListView 单条刷新方法实践及原理解析
  8. Java_面向对象
  9. FPGA开发随笔汇总
  10. 738. Monotone Increasing Digits 单调递增的最接近数字
  11. Windows Server 2012开启磁盘性能计数器
  12. WAS 常见报错
  13. mvc之URL篇
  14. 1.红黑树和自平衡二叉(查找)树区别 2.红黑树与B树的区别
  15. Loadrunner 怎么将response的数据下载下来
  16. 【Android】9.3 自定义列表视图的外观
  17. php学习二:表达式
  18. KNN算法之图像处理二
  19. MongoDB数据仓储
  20. Struts2项目走向流转

热门文章

  1. 数据传递-------@RequestParam
  2. Spring 侵入式和非侵入式
  3. WinForm ListBox 控件用法
  4. sql 所有数据表中 插入字段
  5. CSV文件转EXCEl(java)
  6. Android基础TOP6_1:FrameLyayout和ImageView制作层叠图片
  7. sqlserver如何查询一个表的主键都是哪些表的外键
  8. 本地调试hbase
  9. Deployd的使用
  10. 事件的节流(throttle)与防抖(debounce)