突然发现五天没记录了,这五天学习完全没有按着正常规划进行,先罗列一下吧。

  • 机器学习视频第一周的全部看完了。
  • 算法导论看了几页。
  • 参加了一次CF。rating只加了20,看来提高实力才是最关键的。
  • C++找到了侯捷老师的视频。
  • 貌似记不得什么了。

    记录一下昨天的CF题解吧。

    题目链接:http://codeforces.com/contest/1088

A题:理论上可以用暴力搜,但是除一之外所有的答案都可以写成"x x",不再写代码解释。

B题:题意为数组中的每一个数每次都减去一个最小的数,并输出这个数。可以先排序,然后下面展示的是O(n)复杂度的算法。

#include<iostream>
#include<vector>
#include<cstdio>
#include<algorithm>
using namespace std;
int a[100005];
int main(){ int n,k;
scanf("%d%d",&n,&k);
for(int i = 0; i < n; i++){
scanf("%d",&a[i]);
}
sort(a,a+n);
int sumsub = 0;
int j = 0;
while(k--){
while(j <n && a[j] <= sumsub) j++;
if(j == n) printf("0\n");
else {
printf("%d\n",a[j]-sumsub);
sumsub = a[j];
}
} return 0;
}

C题:题目提到了两个操作,要求在n+1个操作之内讲数组变为升序。可以转化为前n个操作讲n个数对n+1的余数变为递增,然后最后一步对n+1取模。

#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
int a[10000];
vector<pair<int,int>> ans;
int main(){
int n ;
scanf("%d",&n);
for(int i = 1; i <= n; i++){
scanf("%d",&a[i]);
}
int cnt = 0;
int sum = 0;
for(int i = n; i >= 1; i--){
if((sum+a[i])%(n+1) == i) continue;
else {
cnt++;
int d = (sum+a[i])%(n+1);
if(i > d) {ans.push_back(make_pair(i,i-d));sum+=i-d;}
else {ans.push_back(make_pair(i,n+1+i-d));sum+=n+1+i-d;}
}
}
cnt++;
printf("%d\n",cnt);
for(int i = 0; i < cnt-1;i++){
printf("1 %d %d\n",ans[i].first,ans[i].second);
}
printf("2 %d %d",n,n+1); return 0;
}

D题思路是对的,但是因为一些原因没有去做,不然可能这次就上蓝了。

#include<iostream>

using namespace std;

int query(int a,int b){
cout << "? "<<a<<" "<<b<<endl;
int res;
cin >> res;
return res;
}
int a = 0,b = 0;
int main(){
bool comp = (query(0,0) == 1);
for(int i = 29; i >= 0; i--){
int p = query(a,b|1<<i);
int q = query(a|1<<i,b);
if(p == 1 && q == -1){
a = a|1<<i;
b = b|1<<i;
}else if( p == -1 && q == 1){
continue;
}else{
if(comp) a = a|1<<i;
else b = b|1<<i;
comp = (p==1);
}
}
cout << "! "<<a<<" "<<b<<endl; return 0;
}

以后每天都记录一下吧

2018-12-5 及 codeforces round 525v2的更多相关文章

  1. 2018.9.20 Educational Codeforces Round 51

    蒟蒻就切了四道水题,然后EF看着可写然而并不会,中间还WA了一次,我太菜了.jpg =.= A.Vasya And Password 一开始看着有点虚没敢立刻写,后来写完第二题发现可以暴力讨论,因为保 ...

  2. Codeforces 1023 A.Single Wildcard Pattern Matching-匹配字符 (Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Fi)

    Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) A. Single Wildcard Patter ...

  3. Codeforces Round #525 (Div. 2)

    Codeforces Round #525 (Div. 2) 哎,忍不住想吐槽一下,又要准备训练,又要做些无聊的事,弄得我都想退出了. 好好的训练不好么???? 只能做出两道水题,其实C题,感觉做出来 ...

  4. Codeforces Round #523 (Div. 2)

    Codeforces Round #523 (Div. 2) 题目一览表 来源 考察知识点 完成时间 A Coins cf 贪心(签到题) 2018.11.23 B Views Matter cf 思 ...

  5. Codeforces Round #284 (Div. 2)A B C 模拟 数学

    A. Watching a movie time limit per test 1 second memory limit per test 256 megabytes input standard ...

  6. Codeforces Round #268 (Div. 2) ABCD

    CF469 Codeforces Round #268 (Div. 2) http://codeforces.com/contest/469 开学了,时间少,水题就不写题解了,不水的题也不写这么详细了 ...

  7. Codeforces Round #270 1001

    Codeforces Round #270 1001 A. Design Tutorial: Learn from Math time limit per test 1 second memory l ...

  8. Codeforces Round #223 (Div. 2) A

    A. Sereja and Dima time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  9. Codeforces Round #368 (Div. 2) C. Pythagorean Triples(数学)

    Pythagorean Triples 题目链接: http://codeforces.com/contest/707/problem/C Description Katya studies in a ...

随机推荐

  1. 1.变量:var,let,const

    var在ECMAScript的所有版本中都可以使用,而const和let只能在ES6及更晚的版本中使用. var,let,const三个关键字的区别 var: 1)声明作用域:在函数内部,使用var定 ...

  2. IDEA2020.2的破解

    第一种方式:http://code.39sd.cn/ 直接获取二维码: 第二种:下载破解工具(本方法只是提供个人学习使用) 1.下载2020.2的idea 链接:https://pan.baidu.c ...

  3. Android和。net加密。

    来源: Github: https://github.com/Pavel-Durov/CodeProject-Android-and-NET-Encryption 直接: Source Code (A ...

  4. [学习笔记] Tarjan算法求强连通分量

    今天,我们要探讨的就是--Tarjan算法. Tarjan算法的主要作用便是求一张无向图中的强连通分量,并且用它缩点,把原本一个杂乱无章的有向图转化为一张DAG(有向无环图),以便解决之后的问题. 首 ...

  5. Fabric1.4.4 基础环境搭建

    简单记录一下fabric版本1.4.4的环境搭建部署,运行环境为CentOs7.8,如有错误欢迎批评指正. 1.Docker 和 Docker Compose 1. docker的安装部署 docke ...

  6. 初始python模块

    Python语言中,模块分为三类. 第一类:内置模块,也叫做标准库.此类模块就是python解释器给你提供的,比如我们之前见过的 time模块,os模块.标准库的模块非常多(200多个,每个模块又有很 ...

  7. 题解:[COCI2011-2012#5] BLOKOVI

    题解:[COCI2011-2012#5] BLOKOVI Description PDF : https://hsin.hr/coci/archive/2011_2012/contest5_tasks ...

  8. python 不定长参数

    1 #不定长参数 * 元祖 ** 字典 2 def item(a,b,*c,**d): 3 print(a) 4 print(b) 5 print(c) 6 print(d) 7 8 item(11, ...

  9. Linux+Nginx/Apache下的PHP exec函数执行Linux命令

    1.php.ini配置文件 打开PHP的配置文件,里面有一行 disable_function 的值,此处记录了禁止运行的函数,在里面将exec和shell_exec.system等函数删除. 2.权 ...

  10. document.all.WebBrowser为空或不是对象

    项目中也想用这个功能,发现出错,经过测试,一定要加<object id="WebBrowser" width=0 height=0 classid="CLSID:8 ...