随笔分类 -  HDU

上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页
摘要:题目链接:hdu_5794_A Simple Chess 题意: 给你n,m,从(1,1)到(n,m),每次只能从左上到右下走日字路线,有k(<=100)的不能走的位置,问你有多少方案 题解: 画图可看到路线是一个杨辉三角的图,然后我们可以将对应的x,y转换到对应的点上,也可以吧杨辉三角看成一个平行 阅读全文
posted @ 2016-08-06 01:27 bin_gege 阅读(154) 评论(0) 推荐(0)
摘要:题目链接:hdu_5802_Windows 10 题意: 给你两个音量a,b,要让你将音量a变到音量b,up:每秒只能一次加1的音量,down:如果连续按x秒,那么就会减2x-1的音量 题解: 对于a<=b,直接输出a-b就行 对于a>b: 要考虑3种情况: 1. 直接连按x秒 2. 先up到2x- 阅读全文
posted @ 2016-08-05 16:30 bin_gege 阅读(135) 评论(0) 推荐(0)
摘要:题目链接:hdu_5795_A Simple Nim 题意: 有N堆石子,你可以取每堆的1-m个,也可以将这堆石子分成3堆,问你先手输还是赢 题解: 打表找规律可得: sg[0]=0 当x=8k+7时sg[x]=8k+8, 当x=8k+8时sg[x]=8k+7, 其余时候sg[x]=x;(k>=0) 阅读全文
posted @ 2016-08-04 18:42 bin_gege 阅读(188) 评论(0) 推荐(0)
摘要:题目链接:hdu_5793_A Boring Question 题意: 自己看吧,说不清楚了。 题解: 打表找规律 1 #include<cstdio> 2 typedef long long ll; 3 4 const int mod=1e9+7; 5 ll pow(ll a,ll b) 6 { 阅读全文
posted @ 2016-08-04 18:33 bin_gege 阅读(457) 评论(0) 推荐(0)
摘要:题目链接:hdu_1403_Longest Common Substring 题意: 给你两个字符串,然你找最长的公共子串 题解: 后缀数组的经典应用,要找两个字符串的公共子串,那么就相当于找两个串的后缀的最长公共前缀,我们将两个字符串拼接在一起,中间插一个特殊字符 然后我们考虑height数组,h 阅读全文
posted @ 2016-08-03 17:18 bin_gege 阅读(145) 评论(0) 推荐(0)
摘要:题目链接:hdu_5792_World is Exploding 题意: 给你一个数列,让你找有多少个(a,b,c,d)满足a≠b≠c≠d,1≤a<b≤n,1≤c<d≤n,Aa<Ab,Ac>Ad. 题解: 如果abcd可以相等,那么就是所有的顺序对和逆序对相乘,但这里要不相等,所以我们减去相等的情况 阅读全文
posted @ 2016-08-03 11:08 bin_gege 阅读(360) 评论(0) 推荐(0)
摘要:题目链接:hdu_5787_K-wolf Number 题意: 给你一个区间,让你找满足任意k个数位内都没有相同的数字的个数 题解: 因为k不大,就直接将当前pos的前k-1个数传进去就行了 1 #include<cstdio> 2 #include<cstring> 3 int dig[20],l 阅读全文
posted @ 2016-08-02 22:28 bin_gege 阅读(707) 评论(0) 推荐(0)
摘要:题目链接:hdu_5791_Two 题意: 给你两串数列,问你相同的子序列有多少个,要注意,可以重复,比如1 和1 1 1 ,相同的子序列为3个 题解: 就和求最长公共子序列差不多,只不过要全部加起来 下面是官方题解: Two: 水题。dp[i][j]表示A序列前i个数和B序列前j个数的相同子序列对 阅读全文
posted @ 2016-08-02 21:39 bin_gege 阅读(263) 评论(0) 推荐(0)
摘要:题目链接:hdu_5783_Divide the Sequence 题意: 给你一个数列,让你分尽可能多的段,并且保证每一段的前缀和都不小于0 题解: 从后往前xjb贪心就行了 1 #include<cstdio> 2 3 const int N=1e6+7; 4 int a[N]; 5 int m 阅读全文
posted @ 2016-08-02 20:04 bin_gege 阅读(164) 评论(0) 推荐(0)
摘要:题目链接:hdu_5769_Substring 题意: 给你一个字符a和一个串b,问你有多少个包括a的字串 题解: 1 #include<bits/stdc++.h> 2 #define F(i,a,b) for(int i=a;i<=b;++i) 3 using namespace std; 4 阅读全文
posted @ 2016-08-02 00:50 bin_gege 阅读(140) 评论(0) 推荐(0)
摘要:题目链接:hdu_5778_abs 题意: 给你一个数x,然你找一个y,这个y只能被素数分解,每一个素数恰好出现2次,求y-x的绝对值最小 题解: 给官方的 ps:数据太水,打35个素数也能过 1 #include<bits/stdc++.h> 2 #define F(i,a,b) for(int 阅读全文
posted @ 2016-07-31 12:59 bin_gege 阅读(461) 评论(0) 推荐(0)
摘要:题目链接:hdu_5776_sum 题意: 给你一串数,问你是否有一个连续的子序列的和为m的倍数 题解: 维护一个前缀和%m的值,如果前缀和%m的值为0或者有两个前缀和%m的值相同,那么就有一个连续区间的和为m的倍数 1 #include<bits/stdc++.h> 2 #define F(i,a 阅读全文
posted @ 2016-07-30 23:10 bin_gege 阅读(251) 评论(0) 推荐(0)
摘要:题目链接:hdu_5777_domino 题意: 1 #include<bits/stdc++.h> 2 using namespace std; 3 4 const int N=1e5+7; 5 int a[N],t,n,k; 6 int main(){ 7 scanf("%d",&t); 8 w 阅读全文
posted @ 2016-07-30 22:55 bin_gege 阅读(190) 评论(0) 推荐(0)
摘要:题目链接:hdu_5768_Lucky7 题意: 给你一个区间,问你这个区间内是7的倍数,并且满足%a[i]不等于w[i]的数的个数 乍一看以为是数位DP,仔细看看条件,发现要用中国剩余定理,然后容斥一下就出答案了,不过这里在中国剩余定理里面的乘法会有数据爆long long ,所有要写一个高精度乘 阅读全文
posted @ 2016-07-30 16:12 bin_gege 阅读(170) 评论(0) 推荐(0)
摘要:题目链接:hdu_5773_The All-purpose Zero 题意: 给你一串数,让你求LIS,不过这里的0可以改变为任意数 题解: 官方题解讲的很清楚 1010 The All-purpose Zero 0可以转化成任意整数,包括负数,显然求LIS时尽量把0都放进去必定是正确的。因此我们可 阅读全文
posted @ 2016-07-29 15:21 bin_gege 阅读(172) 评论(0) 推荐(0)
摘要:题目链接:hdu_5775_Bubble Sort 题意: 让你找每一个数在冒泡排序中最右边和最左边的位置的差值 题解: 还是官方题解,讲的已经很清楚了 1012 Bubble Sort 考虑一个位置上的数字c在冒泡排序过程的变化情况。c会被其后面比c小的数字各交换一次,之后c就会只向前移动。数组从 阅读全文
posted @ 2016-07-29 11:08 bin_gege 阅读(168) 评论(0) 推荐(0)
摘要:题目链接:hdu_5763_Another Meaning 题意: 一个文本串A,一个模式串B,如果文本串含有模式串B,那么就能组合成多种意思,如下: In the first case, “ hehehe” can have 3 meaings: “*he”, “he*”, “hehehe”. I 阅读全文
posted @ 2016-07-28 18:50 bin_gege 阅读(316) 评论(0) 推荐(0)
摘要:题目链接:hdu_2243_考研路茫茫——单词情结 题意: 让你求包含这些模式串并且长度不小于L的单词种类 题解: 这题是poj2788的升级版,没做过的强烈建议先做那题。 我们用poj2778的方法可以求出不包含这些单词的,然后算出全部种类数,相减就是答案 全部种类数的公式为f[n]=1 + 26 阅读全文
posted @ 2016-07-27 15:47 bin_gege 阅读(197) 评论(0) 推荐(0)
摘要:题目链接:hdu_5754_Life Winner Bo 题意: 一个棋盘,有国王,车,马,皇后四种棋子,bo先手,都最优策略,问你赢的人,如果双方都不能赢就输出D 题解: 全部都可以直接推公式, 这里我推出前两种比较简单的,后面的模拟打个表就行了 1 #include<bits/stdc++.h> 阅读全文
posted @ 2016-07-26 22:32 bin_gege 阅读(215) 评论(0) 推荐(0)
摘要:题目链接:hdu_5752_Sqrt Bo 题意: 给你一个数,问你最少要开多少次方才能为1 题解: 我们发现如果给的数大于232 那么肯定在5次以内是开不出来的,所以直接输出TAT,然后小于的就模拟一下,注意1和0的特判就行 1 #include <cstdio> 2 #include <cstr 阅读全文
posted @ 2016-07-26 20:04 bin_gege 阅读(137) 评论(0) 推荐(0)

上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 19 下一页