codeforces刷题记录
Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)
C. Magic Grid
- 这种题直接构造
- 数n是2的n次方的倍数的时候可以这样划分数
- 比如n是4的倍数 n=k*4
- 000 001 010 011
- 100 101 110 111
- (k-1)00 (k-1)01 (k-1)10 (k-1)11
- 然后填格子
Codeforces Round #581 (Div. 2)
D2. Kirk and a Binary String (hard version)
- 题意:给一个只含01的串,然后构造另外一个串,满足任意给定l~r,新串与原串不最长下降子序列长度相同
- 000001111111这种的你把前面的1变成0是不会有影响的
- 111100000这种的完全不能变
- 所以考虑得到这个不下降子序列的方法:让1和后面所有的0打包,剩下的全要,打包的那部分要一半
- 显然剩下的那部分里把1全变成0是没有影响的
Codeforces Global Round 4
D. Prime Graph
- 题意给一个n,构造这样一个简单图:总边数是质数然后每个边的度是质数
- 光是给出每个边的度是不能构造出一张图来的
- (n-1) + n/4*2 = x 在 n-1 和 (n-1) + n/4*2之间是一定有一个质数的
- 所以光是用度数为2,3就可以完事了~
- 所以遇到这种题目直接玄学构造就好了啊(疯狂打表)
Codeforces Global Round 2
C. Ramesses and Corner Inversion
- 题意:给两个矩阵,问可不可以用上面描述的操作把上面的变成下面的
- 所以这种题就想办法用机智的姿势把上面的变成下面的就好了啊为什么我还是每次都不会quq
- 看题解就完事了
- 真的要学会观察,用简单有规律的去表示复杂的
Codeforces Round #588 (Div. 2)
D.D. Marcin and Training Camp
- 死于认为7000过不了O(n^2)
- 害,还是太菜了
#include <bits/stdc++.h>
#define nmax 7010 using namespace std;
typedef long long ll;
ll a[nmax],b[nmax],c[nmax];
ll ans=;
int n,idx=;
map <ll,int> m; int main(){
cin>>n;
for (int i=; i<n; i++) {
scanf("%I64d",&a[i]);
m[ a[i] ]++;
if(m[ a[i] ]==) c[idx++]=a[i];
}
for (int i=; i<n; i++) scanf("%I64d",&b[i]);
for (int i=; i<n; i++) {
if(m[a[i]]>) ans+=b[i];
else{
for (int j=; j<idx; j++) {
bool flag=true;
for (ll k=; k<=; k++) {
//printf("%lld%lld quq\n",c[j]&(1LL<<k) ,a[i]&(1LL<<k) );
if( (a[i]&(1LL<<k)) && !(c[j]&(1LL<<k)) ){、、这里调试了好久,!=0就过不了,改成非就过了,神奇
flag=false;
break;
}
}
if(flag) { ans+=b[i]; break; } }
}
}
cout<<ans<<endl;
return ;
} ̄□ ̄||
C. Anadi and Domino
- 暴力题,,,看一眼题解就ok了,枚举全排列
- 这场怎么感觉全是暴力题。。。
- 代码:
#include <bits/stdc++.h> using namespace std;
int g[][]={};
int n,m,a,b,ans=;
int ma[],mb[]; void mj(int cnt,int* x){
if(cnt==n
) {
int d[][];
memset(d,,sizeof(d));
for (int i=; i<m; i++){
d[ x[ma[i]] ][ x[mb[i]] ]++;
if(x[ma[i]]!=x[mb[i]]) d[ x[mb[i]] ][ x[ma[i]] ]++;
}
int ta=;
for (int i=; i<=; i++) for (int j=i; j<=; j++) if(d[i][j]) ta++;
ans=max(ans,ta);
return;
}
int tx[n+];
for (int i=; i<=cnt; i++) tx[i]=x[i];
for (int i=; i<=; i++) {
tx[cnt+]=i;
mj(cnt+,tx);
}
} int main(){
cin>>n>>m;
if(m==) { cout<<<<endl; return ; }
for (int i=; i<m; i++) {
scanf("%d%d",&ma[i],&mb[i]);
g[a][b]=g[b][a]=;
}
int x[n+];
mj(,x);
cout<<ans<<endl;
return ;
}o(╥﹏╥)o
codeforces刷题记录的更多相关文章
- DP刷题记录
目录 dp刷题记录 codeforces 706C codeforces 940E BZOJ3997 POJ2279 GYM102082B GYM102082D codeforces132C L3-0 ...
- PE刷题记录
PE刷题记录 PE60 / 20%dif 这道题比较坑爹. 所有可以相连的素数可以构成一张图,建出这张图,在其中找它的大小为5的团.注意上界的估算,大概在1W以内.1W内有1229个素数,处理出这些素 ...
- Codeforces刷题计划
Codeforces刷题计划 已完成:-- / -- [Codeforces370E]370E - Summer Reading:构造:(给定某些数,在空白处填数,要求不下降,并且相邻差值<=1 ...
- leetcode刷题记录--js
leetcode刷题记录 两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但 ...
- Leetcode刷题记录(python3)
Leetcode刷题记录(python3) 顺序刷题 1~5 ---1.两数之和 ---2.两数相加 ---3. 无重复字符的最长子串 ---4.寻找两个有序数组的中位数 ---5.最长回文子串 6- ...
- 刷题记录:[HarekazeCTF2019]encode_and_encode
目录 刷题记录:[HarekazeCTF2019]encode_and_encode 一.知识点 JSON转义字符绕过 php伪协议 刷题记录:[HarekazeCTF2019]encode_and_ ...
- 刷题记录:[De1CTF 2019]Giftbox && Comment
目录 刷题记录:[De1CTF 2019]Giftbox && Comment 一.知识点 1.sql注入 && totp 2.RCE 3.源码泄露 4.敏感文件读取 ...
- 刷题记录:[强网杯 2019]Upload
目录 刷题记录:[强网杯 2019]Upload 一.知识点 1.源码泄露 2.php反序列化 刷题记录:[强网杯 2019]Upload 题目复现链接:https://buuoj.cn/challe ...
- 刷题记录:[XNUCA2019Qualifier]EasyPHP
目录 刷题记录:[XNUCA2019Qualifier]EasyPHP 解法一 1.error_log结合log_errors自定义错误日志 2.include_path设置包含路径 3.php_va ...
随机推荐
- Matplotlib绘制漫威英雄战力图,带你飞起来!
目录 前言 期望功能 代码实现 一.导入matplotlib依赖包 二.支持显示中文 三.使用ggplot主题 四.根据能力项等分圆 五.生成n个子图 六.获取支持的颜色 六.绘制所有子图 更多示例 ...
- 关于广州xx公司对驰骋BPM, 流程引擎表单引擎 常见问题解答
关于广州xx公司对驰骋BPM, 流程引擎表单引擎 常见问题解答 @驰骋工作流,ccflow周朋 周总早, ccflow 功能很强大,在体验过程中,以下几个问题需沟通下: 先使用.net 再使用java ...
- PHPJN0001:phpmyadmin 允许密码为空 设置
phpmyadmin连接mysql数据库,出于安全考虑,默认不允许使用空密码连接数据库.因为数据库一般都设置密码访问. 但如果只是本机环境测试使用,每隔一段时间都需要填写密码,不是很方便. 如果没有修 ...
- 安装nanomsg
xftp上传nanomsg安装包 1.解压安装包tar -xvf nanomsg-1.1.0.tar 进入目录cd nanomsg-1.1.0新建安装目录(在nanomsg-1.1.0目录下)mkdi ...
- 阿里妈妈的iconfont的引用问题
一.先进官网 我们看到了上面的这些图标,是不是很心动,阿里妈妈就是给力,给马老师点赞,但是问题来了我们怎么去使用呢. 二.点击图标 嘿嘿,上面的操作步骤我就不多说了吧,我相信大家都会做的,接下来我们就 ...
- 小白的linux笔记6:关于挂载硬盘
每个硬盘,包括移动硬盘,插上之后都会有个名字,如sda,sdb,sdc.... sda,sdb等名字只与插上的顺序有关.而且重启后有可能会发生变化. 查看全部硬盘可以用fdisk -l. df -h ...
- linux cpp (接口与实现的分离)
以下是 .h 文件,是接口. 以下是函数的实现 以下是主函数 首先是以上两个文件编译,不用编译头文件 g++ -c gradeBook.cpp g++ -c gradeBook.main.cpp 之后 ...
- IIS WEB站点设置
IIS安装 打开控制面板 -> 程序 -> 打开或关闭Windows功能 ,在弹出得对话框中选择“Internet信息服务”复选框.我这里是Windows server 2019 ,界面有 ...
- Percona Xtrabackup 备份工具
生成备份 $ xtrabackup --backup --target-dir=/data/backups/ 注:--target-dir可以放在my.cnf配置文件中.如果指定的目录不存在,xtra ...
- 《C++Primer》第五版习题答案--第六章【学习笔记】
<C++Primer>第五版习题答案--第六章[学习笔记] ps:答案是个人在学习过程中书写,可能存在错漏之处,仅作参考. 作者:cosefy Date: 2020/1/16 第六章:函数 ...