Codeforces Global Round 1 解题报告
A


我的方法是:
#include<bits/stdc++.h>
using namespace std;
#define int long long
typedef long long ll;
const int N=2e5+100;
const int INF = 1e9;
int32_t main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int b, k;
cin >> b >> k;
int sum = 0;
int a[N];
for (int i = 0; i < k;i++){
cin >> a[i];
a[i] = a[i] % 2;
sum += a[i];
}
if(b%2==0){
if(a[k-1]==1)
cout << "odd";
else
cout << "even";
//system("pause");
return 0;
}
else{
if(sum%2==0)
cout << "even";
if(sum%2)
cout << "odd";
}
//system("pause");
return 0;
}
如果b是奇数,那么必须保证系数A相加是偶数,结果才能是偶数
如果b是偶数,那么只要看最后的常数项是奇数还是偶数
B
B题:


C
C题

这个C题,
只是因为在人群中多看了你一眼,我脑壳痛到现在

好了好了我脑壳不痛了,我们开始分析吧!!!
首先我们要搞清楚XOR 和 AND的操作是什么意思
XOR就是异或(^)同0异1
AND就是与(&)都1则1,有0则0
比如说现在有个数,是9
我们还要知道,一般想要gcd(a,b)取得最大值,比如gcd(a,b)==a,那么b==0;
所以对于题目里的
f(a)=max gcd(a^b,a&b);
我们已经知道a了,现在要选取一个合适的b
想要得到一个最大值,那么可以考虑让a&b==0,然后,再求a^b,这个a^b就是答案
举例1:
9的二进制是:1001
假设一个b 使得9&b==0,那么b==0110,也就是6
b==6时,9^b==9^6==1111
对于一个四位的二进制来说,1111是最大值
样例里的3
3(10)==11(2)
3的各位都是1,那么此时b又不能为0,咋办?
打表~~
对于所有为2^n-1的数,打表求它们的最大公因子就ok了
另外还有
2pow4-1=2(2pow3-1)+1;
发现了很棒的代码
https://www.cnblogs.com/shanxieng/p/10355918.html
E
E题,差分数组
刚看到差分数组的定义,我心想,这跟线段树有个啥区别
后来才知道,一个始用于"离线“,另一个始用于”在线"
也就是,差分数组最好是update完了再一起查询
线段树就随便了,什么时候都ok
然后还有一句话:
D[]是A[]的差分数组,A[]是D[]的前缀和
举个栗子
a1 a2 a3 a4
a2=a1+a3-a2;
d2=a3-a2=a3-(a1+a3-a2)=a2-a1=d1;
d2=d1,多么神奇!
Codeforces Global Round 1 解题报告的更多相关文章
- Codeforces Educational Round 81 解题报告
前置扯淡 赛前:这场\(Div2\)呀,那我写\(3\)题就行,\(D\)题尽力就好 赛中:啊啊,\(ABC\)我全过了\(pretest\),我太强了!!这把上蓝稳了 赛后:\(woc\),为啥被\ ...
- CodeForces Global Round 1
CodeForces Global Round 1 CF新的比赛呢(虽然没啥区别)!这种报名的人多的比赛涨分是真的快.... 所以就写下题解吧. A. Parity 太简单了,随便模拟一下就完了. B ...
- Codeforces Global Round 1 - D. Jongmah(动态规划)
Problem Codeforces Global Round 1 - D. Jongmah Time Limit: 3000 mSec Problem Description Input Out ...
- Codeforces Global Round 2 题解
Codeforces Global Round 2 题目链接:https://codeforces.com/contest/1119 A. Ilya and a Colorful Walk 题意: 给 ...
- Codeforces Global Round 1 (A-E题解)
Codeforces Global Round 1 题目链接:https://codeforces.com/contest/1110 A. Parity 题意: 给出{ak},b,k,判断a1*b^( ...
- Codeforces Global Round 3
Codeforces Global Round 3 A. Another One Bites The Dust 有若干个a,有若干个b,有若干个ab.你现在要把这些串拼成一个串,使得任意两个相邻的位置 ...
- Codeforces Global Round 1 (CF1110) (未完结,只有 A-F)
Codeforces Global Round 1 (CF1110) 继续补题.因为看见同学打了这场,而且涨分还不错,所以觉得这套题目可能会比较有意思. 因为下午要开学了,所以恐怕暂时不能把这套题目补 ...
- 【手抖康复训练1 】Codeforces Global Round 6
[手抖康复训练1 ]Codeforces Global Round 6 总结:不想复习随意打的一场,比赛开始就是熟悉的N分钟进不去时间,2333,太久没写题的后果就是:A 题手抖过不了样例 B题秒出思 ...
- Codeforces Global Round 11 个人题解(B题)
Codeforces Global Round 11 1427A. Avoiding Zero 题目链接:click here 待补 1427B. Chess Cheater 题目链接:click h ...
随机推荐
- Win10安装和配置JDK
方法/步骤 1.JDK下载 JDK下载可以在官网下载,如图所示,但由于是国外网站,往往下载速度比较慢,所以推荐在百度软件中心下载.这里要注意自己电脑是32位还是64位,根据具体情况下载相应安装包. ...
- mysql--表数据操作
查询: 简单查询 ####查询的字段必须在表中存在 #### 对查询出来的数据进行修改时,不会修改原来的数据,只是修改了可视化的,我们看到的数据. # 查一个数据 select 字段名 from 表名 ...
- VUE-008-通过路由 router.push 传递 query 参数(路由 path 识别,请求链接显示参数传递)
在前端页面表单列表修改时,经常需要在页面切换的时候,传递需要修改的表单内容,通常可通过路由进行表单参数的传递. 首先,配置页面跳转路由.在 router/index.js 中配置相应的页面跳转路由,如 ...
- 汇编-10.0-CALL和RET指令
call和ret指令都是转移指令,他们都是修改IP,或同时修改CS和IP.它们常被共同用来实现子程序设计. 1.ret和retf ret指令用栈中的数据,修改IP的内容,从而实现近转移: retf指令 ...
- 013-mac重做系统后的软件安装
一.系统设置 1.屏幕设置:系统偏好设置→显示器→排列,多个显示器可以排列组合 2.touch bar功能键设置:系统偏好设置→键盘→键盘,触控栏设置 F1 3.程序坞[dock]设置:系统偏好设置→ ...
- Mac OS X 下安装使用 Docker (2017年7月)
两年前的一篇 Mac OS X 下安装使用 Docker 安装时还是用的 boot2docker, 如今进化到了在 Mac OS X 下用 Docker Toolbox, 而且命令也由 boot2do ...
- ORACLE 数据库管理
[故障处理]ORA-12162: TNS:net service name is incorrectly specified 本文将给大家阐述一个因未设置系统环境变量ORACLE_SID导致ORA-1 ...
- 蓝桥杯近3年决赛题之3(17年b组)
做的时候对了2个小题,一个大题可能会拿点分数. 1. 标题:36进制 对于16进制,我们使用字母A-F来表示10及以上的数字.如法炮制,一直用到字母Z,就可以表示36进制. 36进制中,A表示10,Z ...
- 关于使用CodeFirst,修改类或上下文时操作数据库报错解决方法
在操作已经创建好的数据库时,若是添加新的实体类或者修改原有数据库上下文,会报如下错误: The model backing the 'StudentDbContext' context has cha ...
- MAC 终端走代理服务器
问题描述: MAC 终端,默认不走代理服务器:即浏览器已经可以FQ,但是终端不行: 解决方案:直接设置终端的代理,本文 用的是 shadowSocksX: 打开终端,直接执行:(执行后,只对当前终端起 ...