codechef January Challenge 2017 简要题解
https://www.codechef.com/JAN17
Cats and Dogs
签到题
#include<cstdio>
int min(int a,int b){return a<b?a:b;}
int main(){
int T,a,b,c;
for(scanf("%d",&T);T;--T){
scanf("%d%d%d",&a,&b,&c);
puts(c%==&&c/<=a+b&&c/>=a+b-min(a,b*)?"yes":"no");
}
return ;
}
Reservior
按题目要求模拟
#include<cstdio>
int T,n,m;
char s[][];
int main(){
for(scanf("%d",&T);T;--T){
scanf("%d%d",&n,&m);
for(int i=;i<=m+;++i)s[][i]='A',s[n+][i]='B';
for(int i=;i<=n;++i)scanf("%s",s[i]+),s[i][]=s[i][m+]='A';
for(int i=;i<=n;++i){
for(int j=;j<=m;++j){
if(s[i][j]=='W'){
if(s[i][j-]=='A'||s[i][j+]=='A'||s[i+][j]=='A')goto no;
}else if(s[i][j]=='B'){
if(s[i+][j]=='A'||s[i+][j]=='W')goto no;
}
}
}
puts("yes");
continue;
no:puts("no");
}
return ;
}
Capital Movement
排序后用时间戳打标记然后暴力找未被标记的最值
Tourists in Mancunia
求欧拉回路
Digits Cannot Separate
f[i][j]表示考虑了1..i,分了j段所能得到的gcd的集合,用set维护,实际状态数很少,可以暴力转移
Chef and Circle
二分答案,判定时枚举每一个点A,让一个指定半径的圆O绕点A转一周(A在圆上),记录其他点在圆内时对应的 射线AO 所处的方向区间,求一下某个方向最多被区间覆盖多少次即对应最多有几个点在圆内
Fantastic Four
随机求出10^6以内的每个数的任意一组解,然后线段树维护区间内数的积对应的解,可以按四平方和恒等式合并答案,常数较大,需要O(1)的快速乘
Sereja and BOX
最大值可以贪心,最小值用dp
Sereja and Circles
这题比较坑。。没想到太好的写法。。
整点这个限制不重要,对答案影响在1以内,所以先不管
那么这时,能否得到得分ans,等价于正方形区域边长和每个圆的直径都增加ans后,能否将所有圆不相交地放入正方形
由于强制在线,没法二分答案,那么可以用随机数据本地找出一个自己的程序一般能比较保险出解的上界,然后把答案定下来,以此为目标分
实测表明,每次放球放在最低点(当然重力方向可以不是竖直向下)的效果很好。。这样能水到90~100分。。我写的是从左上向右下放,rank1写的貌似是将圆从四周向中间放再加一些优化
另外可以尝试区分第三、四类数据,但对总分影响较小
Coprime 6-tuples
若已得到mod 359999意义下每个乘积的出现次数,则可以用 莫比乌斯反演 算出答案,注意特判0
359999=599*601,将mod 359999意义下的数用mod 599,601的值组成的有序对表示,则有(0,0),(0,b),(a,0),(a,b)四种形式,其中a,b非零,对非零的情况取离散对数,然后可以用二维fft求出每个乘积的出现次数,若a=0或b=0,可以直接暴力求解
codechef January Challenge 2017 简要题解的更多相关文章
- codechef January Lunchtime 2017简要题解
题目地址https://www.codechef.com/LTIME44 Nothing in Common 签到题,随便写个求暴力交集就行了 Sealing up 完全背包算出得到长度≥x的最小花费 ...
- codechef February Challenge 2018 简要题解
比赛链接:https://www.codechef.com/FEB18,题面和提交记录是公开的,这里就不再贴了 Chef And His Characters 模拟题 Chef And The Pat ...
- CodeChef November Challenge 2013 部分题解
http://www.codechef.com/NOV13 还在比...我先放一部分题解吧... Uncle Johny 排序一遍 struct node{ int val; int pos; }a[ ...
- codechef January Challenge 2014 Sereja and Graph
题目链接:http://www.codechef.com/JAN14/problems/SEAGRP [题意] 给n个点,m条边的无向图,判断是否有一种删边方案使得每个点的度恰好为1. [分析] 从结 ...
- CodeChef June Challenge 2017
好气啊,本来以为比赛时间还有很多,结果回家养病两天回到学校怎么比赛就结束了(雾),大约是小高考弄错了时间? 挑3道有意思的写写题解吧. Cloning 题目大意:给一个序列,每次询问两个等长区间,问区 ...
- JXOI 2017 简要题解
「JXOI2017」数列 题意 九条可怜手上有一个长度为 \(n\) 的整数数列 \(r_i\) ,她现在想要构造一个长度为 \(n\) 的,满足如下条件的整数数列 \(A\) : \(1\leq A ...
- CF&&CC百套计划2 CodeChef December Challenge 2017 Chef And Easy Xor Queries
https://www.codechef.com/DEC17/problems/CHEFEXQ 题意: 位置i的数改为k 询问区间[1,i]内有多少个前缀的异或和为k 分块 sum[i][j] 表示第 ...
- CF&&CC百套计划2 CodeChef December Challenge 2017 Chef and Hamming Distance of arrays
https://www.codechef.com/DEC17/problems/CHEFHAM #include<cstdio> #include<cstring> #incl ...
- CF&&CC百套计划2 CodeChef December Challenge 2017 Total Diamonds
https://www.codechef.com/DEC17/problems/VK18 #include<cstdio> #include<iostream> #includ ...
随机推荐
- LeetCode OJ:Decode Ways(解码方法)
A message containing letters from A-Z is being encoded to numbers using the following mapping: 'A' - ...
- Android支持Split Apks后,如何获得指定包名下的所有类
从Android5.0以后,支持多个apk动态部署,这导致以前通过单一apk获取包路径下的所有类的方法失效,不过稍微修改一下原先的代码就可以,代码如下 public static final List ...
- GPU编程自学5 —— 线程协作
深度学习的兴起,使得多线程以及GPU编程逐渐成为算法工程师无法规避的问题.这里主要记录自己的GPU自学历程. 目录 <GPU编程自学1 -- 引言> <GPU编程自学2 -- CUD ...
- 更换pip源,解决pip install安装包慢的问题
而pip是很强大的Python包安装工具,但是由于国外官方pypi经常被墙,导致不可用,所以最好是将使用的pip源更换一下,这样就能解决被墙导致的装不上库的问题.网上有很多可用的源,例如豆瓣:http ...
- .NET 方法回调
使用 AsyncCallback 委托在一个单独的线程中处理异步操作的结果. AsyncCallback 委托表示在异步操作完成时调用的回调方法. 回调方法采用 IAsyncResult 参数,该参数 ...
- 【剑指offer】栈的压入弹出序列,C++实现(举例)
原创文章,转载请注明出处! 本题牛客网地址 博客文章索引地址 博客文章中代码的github地址 1.题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为第一个序列的出栈序列.注意 ...
- PHP 生成类似 SqlServer NEWID() 全局唯一标识符
最近在对接SqlServer中对方有一个字段要求 SqlServer 中 有一个 NEWID() 就是生成36位的 唯一标识符 -> 8CBD3198-297D-4037-A859-B27BB ...
- MySQL 根据身份证查找年龄段
SELECT idcard,YEAR (NOW()) - substring(idcard, 7, 4) as nFROM es_members where idcard >0 HA ...
- direct2D图片处理
转自:http://blog.csdn.net/augusdi/article/details/9040177 Using Bitmap Brushes Direct2D 中的图片处理增加了很多的灵 ...
- mysql系列:加深对脏读、脏写、可重复读、幻读的理解
关于相关术语的专业解释,请自行百度了解,本文皆本人自己结合参考书和自己的理解所做的阐述,如有不严谨之处,还请多多指教. 事务有四种基本特性,叫ACID,它们分别是: Atomicity-原子性,Con ...