https://www.luogu.org/problemnew/show/CF379C

一道水题,折腾了我好久!

解题:

先排序,从小到大挨个满足客户,把最终rating放进集合里,判断是否已经给出,如果这个期望rating已经存在,那么取集合里最大的rating+1,既要满足期望,又不能重复,从小到大排序,每次取最大+1;

#include<stdio.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<string>
#include<vector>
#include<iostream>
#include<set>
#include<cstring>
#include<queue>
#define inf 0x3f3f3f3f
#define ll long long
using namespace std;int n;
struct node
{int x;///原来的数据int id;
};
node a[300086];bool cmp1(node p1,node p2)
{return p1.x<p2.x;}
bool cmp2(node p1,node p2)
{return p1.id<p2.id;
}int main()
{while(scanf("%d",&n)!=EOF){for(int i=0;i<n;i++)scanf("%d",&a[i].x),a[i].id=i;sort(a,a+n,cmp1);set<int>se;se.insert(a[0].x);set<int>::iterator it;for(int i=1;i<n;i++){it=se.end();it--;if( se.count(a[i].x) )///该x已经在set里
            {a[i].x=*it+1;}se.insert(a[i].x);}sort(a,a+n,cmp2);for(int i=0;i<n;i++)printf("%d ",a[i].x);printf("\n");}return 0;
}

CF379C

转载于:https://www.cnblogs.com/shoulinniao/p/10919230.html

CF379C-New Year Ratings Change相关推荐

  1. CF 379C New Year Ratings Change

    先根据rate排序,去重,注意可能前面去重后的结果影响到后面的值,因此WA了一次.然后在按序列排序回来. #include<iostream> #include<algorithm& ...

  2. 【IT资讯】TIOBE - 2020年7月编程语言排行

    编程语言排行榜 TOP 20 榜单: 统计编程语言R在本月从第9位升至第8位,创造了新的记录. 不久前,Python似乎赢得了统计编程之战,但是R的流行程度在Python的不断提升中仍在增加.有两种趋 ...

  3. pandas.DataFrame()的基本操作

    感觉上pandas的DataFrame就像numpy中的矩阵,不过它拥有列名和索引名,实际操作起来会更方便一些. 如: df = pd.read_clipboard() df.columns df.R ...

  4. pandas入门学习

    知道pandas主要的数据结构以后就可以实际操作学习了,其实学习主要还是学习如何使用Series和Dataframe的属性和方法使用规则,多使用,多看官方文档就差不多了,下面开始学习pandas: S ...

  5. pandas数据处理实践一(简单走一遍)

    pandas处理数据简单的分为如下步骤: 读取数据-->分析数据-->处理数据-->导出数据 第一次主要是走一个流程 df1 = pd.read_csv('/path/xx.csv' ...

  6. 计算机编程入门语言哪个好?

    计算机编程入门语言哪个好?入门语言有基础的推荐C和JAVA语言,零基础的小伙伴推荐从web前端(网页开发)开始.编程已经没什么新鲜和陌生的了,编程已经进入我们生活的方方面面,那么你知道你编程适合学什么 ...

  7. android卡片风格,[Android] Android 卡片式控件CardView的优雅使用

    [Android] Android 卡片式控件CardView的优雅使用 CardView是在安卓5.0提出的卡片式控件 其具体用法如下: 1.在app/build.gradle 文件中添加 comp ...

  8. 一个程序员给产品经理的话

    ok. 一个标准的产品经理有这么几个技能点,那么作为一个程序员,只能给一些工程技术方面的建议了. 从大体环境上来讲,有操作系统(OS), 数据库,服务器,编程语言.   我的工作大致就是使用编程语言, ...

  9. 第4章 数据获取与存储

    目录 4.1 从csv和txt文件存取数据 4.1.1 csv文件的存取 4.1.1.1 以前学过的python读取csv文件 4.1.1.2 pandas读取csv 4.1.1.3 csv文件的写入 ...

  10. TIOBE 202106 编程语言排行榜(查询网址)

    目录 关于TIOBE 网址 202106 排名情况(TIOBE Index for June 2021) 关于TIOBE TIOBE排行榜   是根据互联网上有经验的程序员.课程和第三方厂商的数量,并 ...

最新文章

  1. hibernate mysql 存储过程_hibernate调用mysql存储过程
  2. ArcGIS实验教程——实验八:矢量数据拼接
  3. LevelDB 之 arena
  4. vue判断组件是否显示_vue组件中watch props根据v-if动态判断并挂载DOM的问题
  5. day14——内置函数
  6. 使用glbindbuffers产生访问冲突_预防IP地址冲突的应对方案,你知道吗?
  7. vscode创建代码片段
  8. 一种基于地图导航的语音识别管理系统的制作方法
  9. 函数WaitForMultipleObjects
  10. SpringSecurity半成品笔记
  11. 《杂记》- 之- 使用windows终端命令查看文件的MD5
  12. 西南大学计算机科学学院官网,西南大学计算机与信息科学学院研究生导师简介-李艳涛...
  13. websocket 实现长连接原理
  14. php如何与微信公众平台连接失败,微信公众平台接入问题,配置失败不知道是哪的原因?...
  15. JAVA超全笔试/面试考试题.(500问)--第三章面试题全面收录
  16. Oracle存储过程中声明数组
  17. HZ 和 usleep最小睡眠时间(低精度定时器)
  18. make install - make uninstall - make clean 命令介绍
  19. android的适配器作用,适配器在Android中的作用是什么?
  20. 知识图谱在计算机安全的应用,基于知识图谱的计算机领域胜任力研究与应用

热门文章

  1. 气体流量与质量流率换算
  2. 竹子的精神高山流水,赞美竹子的句子,竹子散文
  3. 程序员薪资:2022年腾讯校招薪资接近40W?我惊呆了
  4. 用计算机如何修改wif密码,电脑怎么修改无线网(WIFI)密码?
  5. Seckill学习笔记——Day3(秒杀功能实现)
  6. ES6: 模板字符串
  7. 数据库中间件DBLE学习(一) 基本介绍和快速搭建
  8. arch 关闭独显_manjaro上安装独显驱动(双显卡切换)的正确方法
  9. 麒麟操作系统安装达梦数据库实战
  10. php怎样做艺术字体,用ps打造科幻艺术字体