1296A - Array with Odd Sum

题意:可以改变数组中的一个数的值成另外一个数组中的数,问能不能使数组的和是个奇数

思路:签到,如果本来数组的和就是个奇数,那就OK

如果不是,就需要把数组中其中一个奇(偶)数改成偶(奇)数,相当于加一减一

所以测一下这个数组如果有个奇数并且还有个偶数就行

#include <cstdio>
#include <iostream>
#include <map>
#include <set>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
int num[];
int main ()
{
int t,n,flag=;
scanf("%d",&t);
while (t--)
{
int all=;
int a1=,a2=;
scanf("%d",&n);
for (int i=;i<n;i++)
{
scanf("%d",&num[i]);
all=all+num[i];
if (num[i]%==)
a1=;
if (num[i]%==)
a2=;
}
if (all%==)
printf("YES\n");
else
{
if (a1&&a2)
printf("YES\n");
else
printf("NO\n");
}
}
return ;
}

1296B - Food Buying

题意:你有一些钱,每花10块可以反1块,最多能花多少?

思路:相当于9块值10块了,但如果直接输出/9*10就WA

因为只有9块的情况下是不能返钱的,记一下就行

#include <cstdio>
#include <iostream>
#include <map>
#include <set>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
int main ()
{
int t,n;
scanf("%d",&t);
while (t--)
{
scanf("%d",&n);
long long all=(n/)*;
if (n%==)
printf("%d\n",all+n%-);
else
printf("%d\n",all+n%);
}
return ;
}

1296C - Yet Another Walking Robot

题意:有一个机器人,有一个字符串,机器人按照字符串里的字母移动

问能不能去掉一个最小的连续区间,使得机器人最终到达的目的地相同?

思路:我这个是真的没想出来,看题解之后才发现,只要有两次到了相同的地方,那么机器人在中间走的一段路就是多余的

再用一个map来储存经过的点,可以用map来检测是否经过同一个点,这样就行了

但是自己写的时候总是各种玄学问题,自定义的结构体放map里无法编译...改成pair之后cf又出个WA...最后改的和题解差不多才过...

#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while (t--)
{
int n;
char s;
cin>>n;
int l=-,r=n;
map<pair<int, int>,int> mm;
pair<int, int> cur={, };
mm[cur]=;
for (int i=;i<n;++i)
{
cin>>s;
if (s=='L')
--cur.first;
if (s=='R')
++cur.first;
if (s=='U')
++cur.second;
if (s=='D')
--cur.second;
if (mm.count(cur))
{
if (i-mm[cur]+<r-l+)
{
l=mm[cur];
r=i;
}
}
mm[cur]=i+;
}
if (l==-)
cout<<-<<endl;
else
cout<<l+<<" "<<r+<<endl;
}
return ;
}

1296D - Fight with Monsters

题意:你和你的对手去打怪,按着顺序从小怪1一直到小怪n

这样打怪:你先打一下,你对手再打一下,如果在你打的时候怪死了,你得一分,你对手打的时候怪死了不得分,但是你还有几次机会可以让你的对手这次不出招,问你最多能得多少分?

思路 :好不容易除了签到又做了一道简单题...

首先,先计算在最后一轮中(也就是你和你对手都打一下这怪就死了的那一次)小怪的血量。

假如说你这次攻击能直接把怪打死,那ok,设这个怪的.ci=-1

如果不能,还是要你先打一次,然后算要让对手不出招多少次才能打死这只小怪,记到ci里

最后对所有小怪按击倒所需次数排序,遍历一遍就Ok

#include <bits/stdc++.h>
using namespace std;
struct mons
{
int ci;
int hp;
};
bool cmp (mons a,mons b)
{
return a.ci<b.ci;
}
mons mon[];
int main ()
{
int n,a,b,k,tem,fin=,i;
scanf("%d %d %d %d",&n,&a,&b,&k);
int all=a+b;
for (i=;i<n;i++)
{
scanf("%d",&tem);
mon[i].hp=tem%all;
if (mon[i].hp==)
mon[i].hp=all;
if (mon[i].hp<=a)
mon[i].ci=-;
else
{
mon[i].hp=mon[i].hp-a;
if (mon[i].hp%a==)
mon[i].ci=mon[i].hp/a;
else
mon[i].ci=mon[i].hp/a+;
}
}
sort(mon,mon+n,cmp);
for (int i=;i<n;i++)
{
if (mon[i].ci==-)
fin++;
else
{
if (k-mon[i].ci>=)
{
k=k-mon[i].ci;
fin++;
}
}
}
printf("%d\n",fin);
return ;
}

Codeforces Round #617 (Div. 3) 补题记录的更多相关文章

  1. Codeforces Round #786 (Div. 3) 补题记录

    小结: A,B,F 切,C 没写 1ll 对照样例才发现,E,G 对照样例过,D 对照样例+看了其他人代码(主要急于看后面的题,能调出来的但偷懒了. CF1674A Number Transforma ...

  2. Codeforces Round #615 (Div. 3) 补题记录

    第一次搞CF,结果惨不忍睹...还是太菜了 A:要用到全部的钱,所以总数必须是3的倍数,而且初始状态下任意一人的钱数不能超过总数除以3,否则没法分了 (也就这个签到算是在我能力范围之内了....) # ...

  3. Codeforces Round #412 Div. 2 补题 D. Dynamic Problem Scoring

    D. Dynamic Problem Scoring time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  4. Codeforces Round #585 (Div. 2) [补题]

    前言 2019.9.16 昨天下午就看了看D题,没有写对,因为要补作业,快点下机了,这周争取把题补完. 2019.9.17 这篇文章或者其他文章难免有错别字不被察觉,请读者还是要根据意思来读,不要纠结 ...

  5. Codeforces Round #429 (Div. 2) 补题

    A. Generous Kefa 题意:n个气球分给k个人,问每个人能否拿到的气球都不一样 解法:显然当某种气球的个数大于K的话,就GG了. #include <bits/stdc++.h> ...

  6. Codeforces Round #419 (Div. 1) 补题 CF 815 A-E

    A-C传送门 D Karen and Cards 技巧性很强的一道二分优化题 题意很简单 给定n个三元组,和三个维度的上限,问存在多少三元组,使得对于给定的n个三元组中的每一个,必有两个维度严格小于. ...

  7. Codeforces Round #590 (Div. 3)补题

    要想上2000分,先刷几百道2000+的题再说 ---某神 题目 E F 赛时是否尝试 × × tag math bitmask 难度 2000 2400 状态 ∅ √ 解 E 待定 F 传送门 第一 ...

  8. Codeforces Round #574 (Div. 2)补题

    A. Drinks Choosing 统计每种酒有多少人偏爱他们. ki 为每种酒的偏爱人数. 输出ans = (n + 1)/2 >  Σki / 2 ? (n + 1)/2 - Σki / ...

  9. Codeforces Round #378 (Div. 2) D题(data structure)解题报告

    题目地址 先简单的总结一下这次CF,前两道题非常的水,可是第一题又是因为自己想的不够周到而被Hack了一次(或许也应该感谢这个hack我的人,使我没有最后在赛后测试中WA).做到C题时看到题目情况非常 ...

随机推荐

  1. MongoDB -> kafka 高性能实时同步(采集)mongodb数据到kafka解决方案

    写这篇博客的目的 让更多的人了解 阿里开源的MongoShake可以很好满足mongodb到kafka高性能高可用实时同步需求(项目地址:https://github.com/alibaba/Mong ...

  2. node - 简单的爬虫案例

    cherrio模块 安装 cnpm install cherrio 使用方法 const cheerio = require('cheerio') const $ = cheerio.load('&l ...

  3. mac系统目录结构

    1 符合unix传统的目录 /bin 传统unix命令的存放目录,如ls,rm,mv等. /sbin 传统unix管理类命令存放目录,如fdisk,ifconfig等等. /usr 第三方程序安装目录 ...

  4. ElasticSearch相关概念与客户端操作

    一.Elasticsearch概述 Elasticsearch是面向文档(document oriented)的,这意味着它可以存储整个对象或文档(document).然而它不仅仅是存储,还会索引(i ...

  5. [shell] shell 变量生命周期, source, export

    1. shell 的派生 用户登录到Linux系统后,系统将启动一个用户shell.在这个shell中,可以使用shell命令, 或声明变量,也可以创建并运行shell脚本程序.运行shell脚本程序 ...

  6. float布局打破标准流,神助攻clear清浮动

    布局是什么?根据功能划分小块,再根据设计稿还原,书写静态页面,然后再在块里面填充内容,完善功能,js施加交互效果.div作为一个容器,独占一行,代码书写习惯从上至下属于标准流,而浮动float的css ...

  7. SAP 序列号与库存关联起来?

    SAP 序列号与库存关联起来? SAP系统标准功能可以实现序列号管理.其系统配置也不复杂,但是不少企业却使用不起来.笔者参与的诸多项目里,只有现在所在的项目里有启用序列号管理.基于项目客户所在行业,以 ...

  8. CentOS安装python3环境

    CentOS7.4安装python3环境 (Python 3.8.1) (stable version, Dec.18, 2019) # .从官网下载Python - Dec. , [stable v ...

  9. Centos 7.5 搭建FTP配置虚拟用户

    Centos 7.5 搭建FTP配置虚拟用户 1.安装vsftpd #vsftpd下载地址 http://mirror.centos.org/centos/7/os/x86_64/Packages/v ...

  10. phpcms v9编辑器上传图片是否添加水印

    第一步:给图片上传对话框里面添加是否添加水印的多选框,找到: satics/js/ckeditor/ckeditor.js 第17554行 (需要格式化,我用的NetBeans)修改为 functio ...