随笔分类 -  codeforces

摘要:题解:状态压缩之后,暴力dfs,如果有一个选择,能让对手必败,那么就是必胜态,能转移到的状态都是对手的必胜态,或者无法转移,就是必败态。总算是过了,TLE是因为状态没判重。#include#include#include#include#include#include#include#include... 阅读全文
posted @ 2015-07-27 23:05 瑞宇 阅读(424) 评论(0) 推荐(0)
摘要:题意:给一个nXm的矩阵,上面有一些数字,从左上角出发,每次只能往右或者往下,把沿途的数字加起来,求到达右下角的最大值是多少。题解:简单的一个dp,设f[i][j]为到达i行j列的最大值,f[i][j] = max(f[i-1][j],f[i][j-1])+a[i][j],然后用队列刷表法。#inc... 阅读全文
posted @ 2015-07-27 18:28 瑞宇 阅读(284) 评论(0) 推荐(0)
摘要:题意:统计一些串中,字母的出现频率,不分大小写,找出现频率最高5个字符(相同频率优先取字典序大的),把他们的对应的值加起来判断以下是否大于62。没出现的不算。#include#include#includeusing namespace std;typedef long long ll;char s... 阅读全文
posted @ 2015-07-27 18:19 瑞宇 阅读(457) 评论(4) 推荐(0)
摘要:根据题意略推一下,其实就是问你满足(a*(a+1))/2 using namespace std;typedef long long ll;int main(){ int T; scanf("%d",&T); for(int k = 1; k > 1; b1 ... 阅读全文
posted @ 2015-07-27 18:13 瑞宇 阅读(216) 评论(0) 推荐(0)
摘要:因为只能买一次,暴力枚举一下买的衣服的大小。#include#include#includeusing namespace std;typedef long long ll;#define fi first#define se secondconst int maxn = 1e5+5;map S;i... 阅读全文
posted @ 2015-07-27 18:07 瑞宇 阅读(454) 评论(0) 推荐(0)
摘要:读懂题意就是水题,按照出现次数对下标排一下序,暴力。。#include#include#includeusing namespace std;typedef long long ll;const int maxn = 1e4+77;ll cnt[maxn];ll r[maxn];bool cmp(i... 阅读全文
posted @ 2015-07-27 18:04 瑞宇 阅读(311) 评论(0) 推荐(0)
摘要:题意:在一条狭窄的沼泽上有一列数量为n的连续荷叶,编号为1-n。有一只蛤,在边s号荷叶上,其他荷叶上苍蝇,哈可以跳到相邻的荷叶上,或者越过一片荷叶,跳完以后原来的荷叶会沉,目标是f荷叶,在跳到f荷叶之前要吃掉其他所有的苍蝇。在这个前提下,希望尽量少跳相邻的荷叶,输出跳相邻荷叶的次数。题解:分析先考虑... 阅读全文
posted @ 2015-07-25 16:42 瑞宇 阅读(598) 评论(4) 推荐(0)
摘要:题意:给你一串非负整数,可以将一个非零数减1,加到相邻的数字上,要使其中所有最大数字的和最小。题解:模拟可以过。也可以分析,可以要减少最大数字和,如果最大数字出现大于等于3次,可以把最大数字加一,或者把某个最大数字减一,最大数字出现减少一次。但是要注意一些特殊情况,下面详述。先扫一遍,如果最大数字为... 阅读全文
posted @ 2015-07-25 16:42 瑞宇 阅读(250) 评论(0) 推荐(0)
摘要:题解:读懂题意按照题意模拟。。。熟悉了一个库函数,strstr,memcpy#include#includeint main(){ int N; char str[150]; int cnt[3] = {0}; scanf("%d",&N); getchar(); fo... 阅读全文
posted @ 2015-07-25 16:42 瑞宇 阅读(143) 评论(0) 推荐(0)
摘要:题意:给你n个点,将这些点放在一个环上,问你不相交的连k条线的方案数。(没有重点)题解:dp[i][j]表示i个点连j条线的方案数,那么新加一个点i,情况1,i没有和之前的点相连,方案数为dp[i-1][j];情况2,i和p号点相连(0#include#include#include#include... 阅读全文
posted @ 2015-07-25 16:42 瑞宇 阅读(336) 评论(0) 推荐(0)
摘要:题意:给一个式子,ak,k>2时,0#include#include#include#include#includeusing namespace std;typedef unsigned long long ull;int main(){ ull p,q; scanf("%I64u%I... 阅读全文
posted @ 2015-07-25 16:42 瑞宇 阅读(370) 评论(0) 推荐(0)
摘要:题意:给你一些钟的时间,只可以往后调, 问最少调的时间总和是多少题解:因为肯定是调到某个出现过时间的,只要枚举时间,在维护一个前缀和快速计算出时间总和就行了。#include#include#include#include#include#include#define first fi#define... 阅读全文
posted @ 2015-07-25 16:41 瑞宇 阅读(344) 评论(0) 推荐(0)
摘要:题意:给你n张卡,每张卡上有蓝色和红色的两种数字,求一种排列使得对应颜色数字之间形成的逆序对总数最小题解:贪心,先按蓝色排序,数字相同再按红色排,那么蓝色数字的逆序总数为0,考虑交换红色的数字消除逆序,那么这个操作的代价是蓝色的数字逆序对增加2*len-3,而红色的数字交换最多也只能消除那么多对逆序... 阅读全文
posted @ 2015-07-23 19:35 瑞宇 阅读(327) 评论(0) 推荐(0)
摘要:A题,超级大水题,根据有没有1输出-1和1就行了。我沙茶,把%d写成了%n。B题,也水,两个矩形的长和宽分别加一下,剩下的两个取大的那个,看看是否框得下。C题,其实也很简单,题目保证了小三角形是正三角形,一个正三角的面积=l*l*(1/2)*cos(30),由于只要算三角形个数,把六边形扩成一个大三... 阅读全文
posted @ 2015-07-23 11:13 瑞宇 阅读(215) 评论(0) 推荐(0)
摘要:题意:给一些带颜色的点,求一个最小的矩形,恰好包括一半的红色点,且不包括蓝色点。题解:暴力,求个二维前缀和,用容斥原理更新一下。N很小所以我采用了离散优化,跑了个0ms。之前没写过二维前缀和,加上离散写得也不是很熟练,所以搞了2个小时,好在是一发就过了。貌似有个坑,线不要特判,不然wa。#inclu... 阅读全文
posted @ 2015-07-21 18:31 瑞宇 阅读(233) 评论(2) 推荐(0)
摘要:题意:给你一个序列,和标准序列连线,求交点数。题解:就是求逆序对个数,用树状数组优化就行了。具体过程就是按照顺序往树状数组了插点(根据点的大小),因为第i大的点应该排在第i位,插进去的时候他前面本该是有i-1个点的,如果少了,那么一定就和这个元素构成了逆序对。#include#include#inc... 阅读全文
posted @ 2015-07-21 18:22 瑞宇 阅读(166) 评论(0) 推荐(0)
摘要:题意:问两个迷宫是否存在公共最短路。题解:两个反向bfs建立层次图,一遍正向bfs寻找公共最短路#include#include#includeusing namespace std;const int maxn = 500+1;int d1[maxn][maxn];int d2[maxn][max... 阅读全文
posted @ 2015-07-19 11:25 瑞宇 阅读(311) 评论(0) 推荐(0)
摘要:题意:给你一堆牌,和一些洗牌机,可以改变牌的顺序,问你能不能通过洗牌机把数字为x的牌洗到第一个位置。题解:反向建边,dfs判断连通性#include#includeusing namespace std;const int maxn = 200000+4;int a[maxn];vector son... 阅读全文
posted @ 2015-07-19 09:53 瑞宇 阅读(351) 评论(0) 推荐(0)
摘要:题意:给你一个函数和一些系数,给你一堆询问,求函数值。根据s的符号,分成两组讨论,函数值与比x小的系数数量有关,二分输出答案。#include#includeusing namespace std;const int maxn = 200000+1;int A[maxn];int B[maxn];i... 阅读全文
posted @ 2015-07-19 09:10 瑞宇 阅读(294) 评论(2) 推荐(0)
摘要:题意:给n个元素,从n中选两个非空集合A和B。问有多少中选法?递推:dp[n]表示元素个数为n的方案数,对于新来的一个元素,要么加入集合,要么不加入集合自成一个集合。加入集合有三种选择,A,B,E(可空的集合),或者自成集合,作为A或B,然后在选一个n-1个元素的非空子集(2^n-1 - 1)。#i... 阅读全文
posted @ 2015-07-19 00:37 瑞宇 阅读(321) 评论(0) 推荐(0)