A. Fair Game

题目链接:http://codeforces.com/contest/864/problem/A

水题

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<stack>
#include<map>
#include<vector>
#include<set>
using namespace std;
const int MAX=1e5+;
const double eps=1e-;
const double mod=1e9+;
#define INF 0x7fffffff
#define ll long long
#define edl putchar('\n')
#define useit ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define FOR(i,a,b) for(ll i=a;i<=b;i++)
#define ROF(i,a,b) for(ll i=a;i>=b;i--)
#define mst(a) memset(a,0,sizeof(a))
#define mstn(a,n) memset(a,n,sizeof(a))
#define lowbit(x) x&(-x)
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
//struct num{int v,i;}l[MAX],r[MAX];
//bool cmp(const num &x, const num &y){return x.v<y.v;} int main()
{
int n,a[MAX],b,t=,s1=,s2=;
FOR(i,,)a[i]=;
cin>>n;
FOR(i,,n)
{
cin>>b;
if(!a[b])
t++;
a[b]++;
}
if(t==)
{
FOR(i,,) if(a[i]){s1=i;break;}
ROF(i,,) if(a[i]){s2=i;break;}
if(a[s1]==a[s2]&&s1!=s2)
cout<<"YES"<<endl<<s1<<" "<<s2<<endl;
else
cout<<"NO"<<endl;
}
else
cout<<"NO"<<endl;
}

B. Polycarp and Letters

题目链接:http://codeforces.com/contest/864/problem/B

水题,写太急了,忘了考虑全是小写字母的情况,wa了两发血亏。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int inf = 1e9+;
const int M = 1e5+;
map<char,int>mp;
int main()
{
int n,maxx;
char s[];
cin>>n;
for(int i=;i<n;i++)
cin>>s[i];
maxx = -inf;
int ans = ;
for(char i = 'a';i<='z';i++){
mp[i] = ;
}
for(int i=;i<n;i++){
if(s[i]>='a'&&s[i]<='z'){
if(mp[s[i]]==)
{
ans++;
mp[s[i]]=;
}
}
else{
maxx = max(ans,maxx);
ans = ;
for(char i = 'a';i<='z';i++){
mp[i] = ;
}
}
}
maxx = max(ans,maxx);
cout<<maxx<<endl;
return ;
}

D. Make a Permu!

题目链接:http://codeforces.com/contest/864/problem/D

题目有点水,直接暴力过了。。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int inf = 1e9+;
const int M = 2e5+;
map<int,int>mp;
int a[M],flag[M];
int main()
{
int n,maxx,i,j;
cin>>n;
maxx = -inf;
memset(flag,,sizeof(flag));
int cnt = ;
for(i=;i<n;i++){
cin>>a[i];
mp[a[i]]++;
if(mp[a[i]]>)
cnt++;
maxx = max(a[i],maxx);
}
int l=;
for(i=;i<n;i++){
if(mp[a[i]]>){
for(j=l+;j<=M;j++){
if(mp[j]==){
mp[j]==;
l = j;break;
}
}
//cout<<l<<endl;
if(l<a[i]){
//cout<<mp[a[i]]<<endl;
mp[a[i]]-=,a[i]=l; //之前这里先替换再标记。搞得wa了一发,血亏。。还好学长出了发神样例查到了
//cout<<mp[a[i]]<<endl;
}
else{
if(flag[a[i]]==){
mp[a[i]]--,a[i]=l;
}
else{
mp[l]==;l--;
flag[a[i]] = ;
}
}
}
}
cout<<cnt<<endl;
for(i=;i<n;i++){
cout<<a[i]<<" ";
}
cout<<endl;
return ;
}

Codeforces Round #436 (Div. 2) A,B,D的更多相关文章

  1. Codeforces Round #436 (Div. 2)【A、B、C、D、E】

    Codeforces Round #436 (Div. 2) 敲出一身冷汗...感觉自己宛如智障:( codeforces 864 A. Fair Game[水] 题意:已知n为偶数,有n张卡片,每张 ...

  2. Codeforces Round #436 (Div. 2) C. Bus

    http://codeforces.com/contest/864/problem/C 题意: 坐标轴上有x = 0和 x = a两点,汽车从0到a之后掉头返回,从a到0之后又掉头驶向a...从0到a ...

  3. Codeforces Round #436 (Div. 2) E. Fire

    http://codeforces.com/contest/864/problem/E 题意: 有一堆物品,每个物品有3个属性,需要的时间,失效的时间(一开始)和价值.只能一件一件的选择物品(即在选择 ...

  4. Codeforces Round #436 (Div. 2)

    http://codeforces.com/contest/864 第一次打cf的月赛-- A 题意:给你一个数列,问你能不能保证里面只有两种数且个数相等.2<=n<=100,1<= ...

  5. Codeforces Round #436 (Div. 2) D. Make a Permutation!

    http://codeforces.com/contest/864/problem/D 题意: 给出n和n个数(ai <= n),要求改变其中某些数,使得这n个数为1到n的一个排列,首先保证修改 ...

  6. Codeforces Round #436 (Div. 2) B. Polycarp and Letters

    http://codeforces.com/contest/864/problem/B 题意: 给出一个字符串,要求找到一个集合S,使得从S中选出的所有数,在这些数的位置上的字母全部为小写且是不同的字 ...

  7. Codeforces Round #436 (Div. 2)D. Make a Permutation! 模拟

    D. Make a Permutation! time limit per test: 2 seconds memory limit per test: 256 megabytes input: st ...

  8. Codeforces Round #436 (Div. 2)C. Bus 模拟

    C. Bus time limit per test: 2 seconds memory limit per test: 256 megabytes input: standard input out ...

  9. 【做题】Codeforces Round #436 (Div. 2) F. Cities Excursions——图论+dfs

    题意:给你一个有向图,多次询问从一个点到另一个点字典序最小的路径上第k个点. 考虑枚举每一个点作为汇点(记为i),计算出其他所有点到i的字典序最小的路径.(当然,枚举源点也是可行的) 首先,我们建一张 ...

随机推荐

  1. proxy config (firefox config)

    sudo apt-get install shadowsocks sudo apt-get install polipo 编辑polipo config: sudo vim /etc/polipo/c ...

  2. ORA-10858:在要求输入数字处找到非数字字符

    今天在写sql语句的时候,运行报错:ORA-10858:在要求输入数字处找到非数字字符 在网上查了一下为什么会有这种错误,有一个建议是可能是写的sql语句中的日期没有处理.仔细看了一下自己写的代码 就 ...

  3. thymeleaf参考手册

    1.创建 html <!DOCTYPE html><html xmlns:th="http://www.thymeleaf.org"></html&g ...

  4. WPF 实现主从的datagrid以及操作rowdetailtemplate 的方法

    原文:WPF 实现主从的datagrid以及操作rowdetailtemplate 的方法 WPF 实现主从的datagrid以及操作rowdetailtemplate 的方法        最近在做 ...

  5. Bluedroid 函数分析:BTA_GATTC_Open

    进行GATT 通信,首先要打开GATT 的通道.下面我们分析BTA_GATTC_Open 这个函数: 这个函数在bta_gattc_api.c 文件中定义,这个是一个接口文件,里面没有做真正的open ...

  6. mysql操作命令梳理(4)-grant授权和revoke回收权限

    在mysql维护工作中,做好权限管理是一个很重要的环节.下面对mysql权限操作进行梳理: mysql的权限命令是grant,权限撤销的命令时revoke:grant授权格式:grant 权限列表 o ...

  7. ACM-ICPC 2018 沈阳赛区网络预赛 G. Spare Tire

    这题很好啊,好在我没做出来...大概分析了一下,题目大概意思就是求 问所有满足1<=i<=n且i与m互素的ai之和 最开始我们队的做法是类似线性筛的方法去筛所有数,把数筛出来后剩下数即可, ...

  8. Scrum Meeting NO.6

    Scrum Meeting No.6 1.会议内容 今晚是提交编译测试程序的截至日期,大家果断都在忙着写编译,所以今天的进度不大. 2.任务清单 徐越 序号 近期的任务 进行中 已完成 1 代码重构: ...

  9. 关于摄影O2O的前期准备

    更新内容暂时在这位同学的博客:http://www.cnblogs.com/ys1101/

  10. Mock.js的简易使用

    一:安装 npm install mockjs --save-dev 二:引入 在src目录下创建mock.js文件,输入以下代码: // 引入mockjs const Mock = require( ...