Codeforces Round #617 (Div. 3)
A
题意:能否将数组里面的值用数组里面的值替换出一个和为奇数的数组
思路:1.和为奇数yes 2.和为偶数但有奇数yes 3.个数是奇数的,有奇数的yes 其他都是no
果然罚时全给了A
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define il inline
#define it register int
#define lowbit(x) (x)&(-x)
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 1000000007
const int maxn=1e5+;
int a,n,sum;
int main(){
int t;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
sum=;
int f=,f2=;
for(it i=;i<n;i++){
scanf("%d",&a);
sum+=a;if(a&){f=;}
if(a%==){f2=;}
}
if(sum& || (f== && n&) || (sum%== &&f== && f2==)){
printf("YES\n");
}
else{
printf("NO\n");
}
}
return ;
}
B
题意:每花十元,可以得一元,问最多能花多少
思路:9的倍数特判(n-1)/9+n,其他 n/9+n就是答案
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define il inline
#define it register int
#define lowbit(x) (x)&(-x)
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 1000000007
const int maxn=1e5+;
int a,n,sum;
int main(){
int t;
scanf("%d",&t);
while(t--){
scanf("%d",&n);
if(n%==){
printf("%d\n",n+(n-)/);continue;
}
printf("%d\n",n+n/);
}
return ;
}
C
题意:如果有走过重复点,算出最小的步数的l和r值
思路:用map存点,模拟就行
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define il inline
#define it register int
#define lowbit(x) (x)&(-x)
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 1000000007
const int maxn=2e5+;
int n,t;
struct node{
int x,y;
friend bool operator<(const node a,const node b){
if(a.x==b.x){
return a.y<b.y;
}
return a.x<b.x;
}
node(){}
node(int xx,int yy):x(xx),y(yy){}
};
char s[maxn];
map<node,int>mp;
int main(){
scanf("%d",&t);
while(t--){
scanf("%d",&n);
scanf("%s",s+);mp.clear();
int x=,y=;
mp[node(,)]=;
int f=,l,r,minb=maxn;
for(it i=;i<=n;i++){
if(s[i]=='L'){
x--;
}
else if(s[i]=='R'){
x++;
}
else if(s[i]=='U'){
y++;
}
else if(s[i]=='D'){
y--; }
if(mp[node(x,y)]==){
int kkk=i-;
if(kkk<minb){l=;r=i;minb=kkk;}f=;mp[node(x,y)]=i;
}
else if(mp[node(x,y)]){
int kkk=i-mp[node(x,y)];
if(kkk<minb){l=i-kkk+;r=i;minb=kkk;}f=;mp[node(x,y)]=i;
}
else{
mp[node(x,y)]=i;
}
//cout<<x<<y<<i<<endl;
}
if(f){
printf("-1\n");
}
else{
printf("%d %d\n",l,r);
}
}
return ;
}
D
居然比c题开的快,因为c题题目读了半天,读不懂直接跳了
题意:a和b的攻击力,有n个h1~hn的血条怪,有k个使得b跳过技能的招数,问a有多少次可以杀死怪的最后一血
思路:h1~hn都余上(a+b)==sheng,sheng<=a,总值加一,sheng>a的部分求出需要的k==(sheng-1)/a,存下来排序求最大总值
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define il inline
#define it register int
#define lowbit(x) (x)&(-x)
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 1000000007
const int maxn=2e5+;
int n,a,b,k,h,s[maxn];
int main(){
scanf("%d%d%d%d",&n,&a,&b,&k);
//int kk=__gcd(a,b);
int c=a+b;
int sum=,t=;
for(int i=;i<n;i++){
scanf("%d",&h);
int sheng=h%c;
if(sheng==){sheng=c;}
//cout<<sheng<<endl;
if(sheng<=a){
sum++;
}
else{
s[t++]=(sheng-)/a;
}
}
sort(s,s+t);
for(it i=;i<t;i++){
if(k>=s[i]){
sum++;k-=s[i];
}
else{break;}
}
printf("%d\n",sum);
return ;
}
E1
我吐血了,死因s[i]>=s[j],多了等号,因为c题搞了半天,当时c题的读题和一直判不好(0,0)点导致时间没有,一看E1这么简单,暴力来,然后wa到比赛结束
然后看了数据,彻夜难眠……因为是暴力,所以代码就不放出来了,等补完了E2,直接放E2的代码。
upd:原来E2是多个颜色,数据扩大,那就还是贴一下E1的暴力代码了
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define il inline
#define it register int
#define lowbit(x) (x)&(-x)
#define mem(a,b) memset(a,b,sizeof(a))
#define mod 1000000007
const int maxn=2e5+;
int n,a[]={};
char s[];
int main(){
scanf("%d",&n);
scanf("%s",s);
a[]=;
int ff=;
for(it i=;i<n;i++){
for (int j=;j<i; j++) {
if (s[j]>s[i]) {
a[i]= ;
}
}
for (int k=i+;k<n; k++) {
if (s[i]>s[k] && a[i]==) {
ff = ;
break;
}
}
if(!ff){
break;
} }
if(ff){
printf("YES\n");
for(it i=;i<n;i++){
printf(i==n-?"%d\n":"%d",a[i]);
}
}
else{
printf("NO\n");
}
return ;
}
不知道为什么……现在打比赛开局总会爆炸
Codeforces Round #617 (Div. 3)的更多相关文章
- Codeforces Round #617 (Div. 3) String Coloring(E1.E2)
(easy version): 题目链接:http://codeforces.com/contest/1296/problem/E1 题目一句话就是说,两种颜色不同的字符可以相互换位, 问,对这字符串 ...
- Codeforces Round #617 (Div. 3)F. Berland Beauty
题意: 给一棵树,边权未知,现在给m组约束,每组约束给出从u到v路径中的最小值,现在让你给出一组边权,使得符合之前的约束,不能给出输出-1 思路: 因为n较小,对于每组约束我们可以直接暴力修改路径上的 ...
- Codeforces Round #617 (Div. 3) D. Fight with Monsters
D : Fight with Monsters 题目大意 : 有一组数,每个值对应着一个怪物的 hp 值,现在有两个人,一个自己一个对手,每个人有一个攻击值, 两个人轮流攻击怪物,如果是自己将怪物先打 ...
- Codeforces Round #617 (Div. 3) 补题记录
1296A - Array with Odd Sum 题意:可以改变数组中的一个数的值成另外一个数组中的数,问能不能使数组的和是个奇数 思路:签到,如果本来数组的和就是个奇数,那就OK 如果不是,就需 ...
- Codeforces Round #617 (Div. 3) 题解
又是隔了一年才来补题的我 A.B水题就不用说了 C - Yet Another Walking Robot C题我居然卡了一会,最后决定用map水,结果出来看了看题解,居然真的是map...没想到会出 ...
- Codeforces Round #617 (Div. 3)A. Array with Odd Sum(水题)
You are given an array aa consisting of nn integers. In one move, you can choose two indices 1≤i,j≤n ...
- [CF百场计划]Codeforces Round #617 (Div. 3)
A. Array with Odd Sum Description You are given an array \(a\) consisting of \(n\) integers. In one ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
随机推荐
- JavaScript错误-throw、try和catch
try 语句测试代码块的错误. catch 语句处理错误. throw 语句创建自定义错误. finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行. JavaS ...
- Mysql sql语句技巧与优化
一.常见sql技巧 1.正则表达式的使用 2.巧用RAND()提取随机行 mysql数据库中有一个随机函数rand()是获取一个0-1之间的数,利用这个函数和order by一起能够吧数据随机排序, ...
- 【Webex】加入会议是无法正常加入!提示“下载会议组件时无法获取正确的参数。 请联系技术支持以获取帮助。
来自:Cisco Webex帮助中心 https://help.webex.com/zh-cn/WBX9000023909/Error-Failed-to-get-correct-parameters ...
- vue 获得当前无素并做相应处理
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HttpServer性能比较
在自己的本子上随便测了下几款HttpServer,环境信息就不贴出来了,主要是比对下差距. 测试内容是输出 text/plain 的 hello, world. 先说结论:Netty > Joo ...
- Python 报错 AttributeError: module 'django.db.models' has no attribute 'SubfieldBase'
AttributeError: module 'django.db.models' has no attribute 'SubfieldBase' http://www.guanggua.com/qu ...
- Java入门笔记 07-枚举类
介绍:在某些情况下,一个类的对象是有限且固定的,比如季节类,只有四个对象:春夏秋冬.这种实例有限而且固定的类,被称为枚举类.在JDK 5.0及以后,可以使用enum关键字定义枚举类,并且默认继承于ja ...
- Dubbo监控中心搭建-dubbo-monitor-simple的使用
场景 Dubbo环境搭建-管理控制台dubbo-admin实现服务监控: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10362 ...
- SpringBoot踩坑记(HTTP 400 错误)
HTTP 400 错误 复现错误 ajax请求后台数据时有时会报 HTTP 400 错误 - 请求无效 (Bad request);出现这个请求无效报错说明请求没有进入到后台服务里:原因:1)前端提交 ...
- Django框架之ORM的相关操作之分页(六)
分页是每个项目必不可少要写的一个功能,该篇文章就将记录一下使用ORM写分页的过程. 假设我们的数据库里面需要显示一些数据,而这个表中的数据大约有几千条数据,那么我们不可能将所有的数据都显示出来,那么就 ...