随笔分类 -  数据结构

摘要:A =w= B 计数题,枚举A、C,算B、D的个数,注意减去重复的 我当时是f[1][n]->f[2][n]->f[3][n]->f[4][n]递推的 C 题意:长为n的字符串仅由'2' '3'组成,有m次交换机会,每次交换相邻的两个位置,求最终可以有多少个"233"子串(n<=100,m<=50) 阅读全文
posted @ 2017-02-26 15:58 Chellyutaha 阅读(127) 评论(0) 推荐(0)
摘要:卿学姐OJ……很休闲啊……? A 分析:枚举/exgcd B 分析:栈模拟 弄个栈模拟配对过程,将能够配对的()位置染色,最后最长的一段染色区间就是答案 C 分析:dp f[i][j]表示前i个物品,SA-C*SB==j的前提下最小代价,很方便就能转移 卿学姐给的标程是1e9的dp……评测姬挺休闲啊 阅读全文
posted @ 2017-02-21 22:23 Chellyutaha 阅读(139) 评论(0) 推荐(0)
摘要:A(UVA12336) 题意:给一个n*m(n,m<=1e5)的棋盘,棋盘上有一些障碍点不能放棋子,现在要在棋盘上放4个棋子,满足A->B->C->D->A,其中走的规则是跳马字,问一共有多少种方案 分析:数学计算+hash 因为A、B、C、D可以顺时针、逆时针、随便以谁为起点放,所以对于一个确定的 阅读全文
posted @ 2017-01-24 23:59 Chellyutaha 阅读(273) 评论(0) 推荐(0)
摘要:数论 poj3708:根据题意就是把m的每一位按照b的置换(特别的第一位是按照a的置换)转变成k,对每一位考虑,就可以得出一个模方程,整个就是解模方程组。就是列方程有点复杂,刚开始转成进制有点复杂,要写高精度除单精度。 hdu1695:求1<=x<=m,1<=y<=n内gcd(x,y)=k的数对,并 阅读全文
posted @ 2017-01-21 15:52 Chellyutaha 阅读(191) 评论(0) 推荐(0)
摘要:A =w= B QuQ C 题意:有n个体育场,每个体育场有一些小精灵,一共m种小精灵(n<=1e5,m<=1e6),可以将数字全为i的精灵进化成j(可以互相进化也可以选择不进化),问有多少种进化方案可以让进化后每个体育场小精灵的种类和数量一模一样 分析:数学 若数字i可以和数字j互相调换,那么说明 阅读全文
posted @ 2017-01-14 16:40 Chellyutaha 阅读(116) 评论(0) 推荐(0)
摘要:A =w= B U.U C 题意:一道大模拟,不想看…… D 题意:给n个区间,从中选出k个区间,使得并集最大 分析:set或者线段树 因为此题需要输出方案,所以线段树就不太好了,用set比较好 先离散化,然后枚举左端点,把左端点对应的右端点全部加入set中,然后删除最小的几个留下k个最大的,那么就 阅读全文
posted @ 2017-01-11 21:17 Chellyutaha 阅读(158) 评论(0) 推荐(0)
摘要:A =w= B QvQ C 题意:在一个格子图里给出一个路径 里面有UDLR四种移动方向 问 我在格子路径里面最少选几个点 可以让我沿着格子路径走 其实是在相邻的点与点之间走最短路 分析:贪心+模拟 尽可能选取长的一段,满足这一段里L和R只出现一种,U和D只出现一种 模拟即可 D 题意:给出n个字符 阅读全文
posted @ 2017-01-09 22:33 Chellyutaha 阅读(158) 评论(0) 推荐(0)
摘要:A =w= B QvQ C 题意:给定一个长度为n的D/R序列,代表每个人的派别,然后进行发表意见,顺序是从1到n。每个人到他的回合可以踢掉一个人。被踢掉的人不能参与发表直接跳过他的回合。如此知道剩下一个人。输出那个人所在的派别。 分析:贪心 对于一个人来说,踢掉的人当然是敌方阵营即将发话的人,因为 阅读全文
posted @ 2017-01-09 16:52 Chellyutaha 阅读(207) 评论(0) 推荐(0)
摘要:A =w= B VOV C QoQ D 题意:贝尔兰冬天很冷,那么司机要换上冬天专用轮胎才能开车。假设冬天一共有n天,有一套冬天专用轮胎,仅能使用k天,这套轮胎不管什么温度都能用,而夏天用的轮胎只能在温度非负的日子里使用,问要平安开n天的车最少需要换几次轮胎(穿上和脱下都算) 分析:贪心 贪心想法很 阅读全文
posted @ 2017-01-08 23:10 Chellyutaha 阅读(126) 评论(0) 推荐(0)
摘要:A =w= B QAQ C ^o^ D 题意:小明要和a+b杯茶共n杯,有绿茶a杯,黑茶b杯。小明喝同一种茶最多连续喝k杯。问是否存在一种方案使得小明喝完这n杯茶,是则输出任意一种顺序。 分析:贪心 我们的目标是尽可能制造绿茶和黑茶相等的局面,所以先尽可能将多的那个喝成与少的那个相等,若相等则直接可 阅读全文
posted @ 2017-01-08 23:00 Chellyutaha 阅读(169) 评论(0) 推荐(0)
摘要:题意:给你一个数列a,a[i]表示斐波那契数列的下标为a[i],求区间对应斐波那契数列数字的和,还要求能够维护对区间内所有下标加d的操作 分析:线段树 线段树的每个节点表示(f[i],f[i-1])这个数组 因为矩阵的可加性,所以可以进行lazy操作 我最开始的想法是每个节点lazy表示该区间下标加 阅读全文
posted @ 2016-12-16 23:15 Chellyutaha 阅读(464) 评论(0) 推荐(0)
摘要:A(hdu5982)、(模拟) 题意:输入n对数,将每对数相乘并相加 分析:模拟 B(hdu5983)、(模拟) 题意:给你一个二阶魔方,问能否通过一次旋转使得给定魔方的每个面颜色相同 分析:模拟 C(hdu5984)、(数学,微分方程) 题意:有一个长为d的木棒,最右端有长为L的区域(L<=d), 阅读全文
posted @ 2016-11-27 20:00 Chellyutaha 阅读(1938) 评论(0) 推荐(0)
摘要:A、(分类讨论) 题意:你有n本书,有三种买书方案,花a元买1本,花b元买2本,花c元买3本,问最少花多少钱,使得你书的总数是4的倍数 分析:分类讨论的题,但是要注意你可以买超过4本书……可以买5本、6本、7本让你达到4的倍数 B、=w= C、(构造) 题意:设mex[i][j]表示一段区间i,j内 阅读全文
posted @ 2016-11-27 19:29 Chellyutaha 阅读(167) 评论(0) 推荐(0)
摘要:A(hdu5961):(BFS) 题意:给两个有向图=P=(V,E​P​​)和Q=(V,E​Q​​), 满足1.E​P​​与E​Q​​没有交;2、E​P​​∪E​Q​​是竞赛图。判断P与Q是否同时为传递的。一个有向图G是传递的,当且仅当对任意三个不同的顶点a,b,c,若有一条边从a到b且有一条边从b 阅读全文
posted @ 2016-11-06 10:45 Chellyutaha 阅读(738) 评论(0) 推荐(0)
摘要:A、B:模拟 C、构造下就行了 D、题意:n个参加ACM的队(n<=300000),每个队都有自己的初始气球数和重量,规定如果气球数>重量,那么此队就会飞起来,淘汰出局,你现在是第一组,你可以给其他组气球,问你最高能排名多少,你的排名是气球数严格大于你气球数的队伍数+1。 分析:贪心的想法,将那些气 阅读全文
posted @ 2016-10-24 00:15 Chellyutaha 阅读(91) 评论(0) 推荐(0)
摘要:poj2965 poj1753:标准的BFS+位运算优化 poj1328:线段覆盖变种,把圆对应到线段上,贪心求解 poj2109:高精度开根,二分+高精度,注意要判断答案的位数,如果按照题目给的范围二分会TLE poj2586:给十二个月定盈亏(每个月+s或-d),连续5个月总的需要时亏,求12个 阅读全文
posted @ 2016-10-12 09:19 Chellyutaha 阅读(393) 评论(0) 推荐(0)
摘要:一、单个字符串问题 1、重复子串 ①可重叠最长重复子串 分析:后缀的lcp就是子串的lcp,等价于求任意两个后缀的的最长公共前缀,任意两个后缀的最长公共前缀是这段height[]中的最小值,这个最小值一定小于整个height[]的最大值,所以结果就是height[]的最大值 O(n) ②不可重叠最长 阅读全文
posted @ 2016-10-09 21:15 Chellyutaha 阅读(308) 评论(0) 推荐(0)
摘要:KMP 1 #include<cstring> 2 #include<algorithm> 3 #include<cstdio> 4 using namespace std; 5 const int maxn=2000; 6 char a[maxn+50],s[maxn+50]; 7 int nex 阅读全文
posted @ 2016-09-28 09:01 Chellyutaha 阅读(1466) 评论(0) 推荐(3)
摘要:A、题意:给出一个整数n, 找出一个大于等于n的最小整数m, 使得m的质因数只有2 3 5 7 分析:预处理出质因数2 3 5 7的数,超过maxt就行,然后找 B、题意:求1/1^2+1/2^2+...+1/n^2 分析:题坑,意思是n很大 感觉上越到后来值越小,实际上这个是趋向π^2/6,于是小 阅读全文
posted @ 2016-09-21 15:44 Chellyutaha 阅读(308) 评论(0) 推荐(0)
摘要:A、题意: 有一个n×n的格子, 有50种怪物. 有m个操作, 每次操作会往一个矩形区域放怪物, 每个格子放相同数目的怪物, 或者查询当前50种怪物的奇偶性. 分析:用2^50表示怪物的奇偶,然后就是二维区间异或问题,用二维树状数组 考虑一维情况,给一段区间[L,R]^X,询问[1,P] 对于树状数 阅读全文
posted @ 2016-09-21 11:43 Chellyutaha 阅读(706) 评论(0) 推荐(0)