![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
思路题
AC之路有笑有泪
搞ACM挺好的,就是头有点冷。
展开
-
二分思路题Anton and Fairy Tale
二分法: 题意:n表示谷仓内能容纳的粮食,m表示每天放入谷仓多少粮食; 每个第i天都会有i只鸟来吃i颗粮食,然后这天再放入m颗粮食,粮食溢出的不要了(粮食最多有n颗;问多少天能把粮食吃完;原创 2017-03-20 10:24:21 · 359 阅读 · 0 评论 -
HDU 6069 Counting Divisors 思路题(附赠大神代码)
传送门Counting DivisorsTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)Total Submission(s): 1275 Accepted Submission(s): 449Problem DescriptionI原创 2017-08-04 08:47:15 · 463 阅读 · 0 评论 -
codeforces 839B Game of the Rows(思路题)
题目链接Game of the RowsDaenerys Targaryen has an army consisting of k groups of soldiers, the i-th group contains ai soldiers. She wants to bring her army to the other side of the sea to get原创 2017-08-15 09:44:27 · 724 阅读 · 0 评论 -
2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 Frequent Subsets Problem
题意:现在给你一个n,再给你不多于50组的数据(及大集合)(每一行算一组数据)(每组数据的数字个数未知,且无重复,且数字不大于n)现在让你求出,有多少个不同的 子集出现在这些集合中的概率大于a。思路:数据不大,n最大20,最多50组数据;原创 2017-09-25 19:39:38 · 367 阅读 · 0 评论 -
codeforces 628 B . New Skateboard字符串中 有多少个4的倍数的子串
题意:求字符串中有多少个4的倍数的子串,思路:可以用dp[i][j]表示包含第i位(第i位是这些子串的最后一位)的子串,除以4余j的个数。每次都用dp[i-1][j]来根据 第i个字符 更新 dp[i][j];原创 2017-09-27 11:10:43 · 596 阅读 · 0 评论 -
HDU 1719 Friend (思路题)公式推导变形
题意:现在有一种朋友数字的定义是如果a和b都是这样的数字,那么a*b+a+b也是朋友数字,(a可以等于b)现在确定1和2已经是朋友数字了,给你一个数字让你确定这个数字 是否为朋友数字。思路:这道题的公式是可以化简的,a*b+a+b = a*(b+1)+b+1-1 = (a+1)*(b+1)-1;假设:因为a为朋友数字,所以假设a是由这个式子推来的,a由a1和b1推来的,假设b由a2和b2推来的,(a1,a2,b1,b2都是朋友数字)那么有a=(a1+1)*(b1+1)-1; b=(a2+1)*(b原创 2017-10-09 13:17:14 · 476 阅读 · 0 评论 -
codeforces 834 C 思路题
题意:现在两个人做游戏,每个人刚开始都是数字1,谁赢了就能乘以k^2,输的乘以k,现在给你最终这两个人的得分,让你判断是否有这个可能,有可能的话Yes,否则No。思路:不论谁乘以k^2,谁乘以k,他们一定是都至少乘了一个k,并且他两个人的乘积一定是乘了一个k的三次方。所以先把所有数字的三次方存一下,然后先判断这两个数字乘积是否为三次方的数字(x^3),若是的话,在判断这两个数字是否是这个数字的x的倍数。是的话为Yes,否则No。原创 2017-11-09 11:10:56 · 424 阅读 · 0 评论 -
51nod 1350 斐波那契表示 规律题
题意:f[n]=f[n-1]+f[n-2];f[1]=1,f[2]=1; f[]表示斐波那栔数列; F[n]=i (f[]+f[])(表示n最少由i个f[]相加得到)G[n]=F[n]+F[n-1]+F[n-2]+.....+F[1];求G[n]的值?思路:因为n很大,打表什么的都不可能,斐波那契数列是有规律的,所以G数列肯定也是有规律的。规律如下:我按顺序写下来一些数字的F[]值,F[1],F[2],F[3].....F[33]。前边的几个是这一行我写的F[]个数.1个: 11原创 2017-11-19 09:56:26 · 414 阅读 · 0 评论 -
HDU 3697 Selecting courses(贪心)
题意:给你n个区间,(x,y)是这节课可以选课的时间,x,y是分钟,现在每过5分钟可以选课,不论你选不选,初始时间一定,后面选课的时间也会定下来。求你们最多能选多少个课?思路:因为(x,y)是开区间,每分钟选一个整数即可,所以选每个分钟的开始,所以(2,5)右(要左不要)包含了2,3,4,不包含5.分为还有0.5.10.15.。。。995,还有1,6,11,16,21.......996这种,还有2,3,4开头的等等用数组a[i][j]存一下,包含i这一分钟的第j个区间的编号。每个编号都有这个区间的原创 2017-11-24 23:48:29 · 299 阅读 · 0 评论 -
函数求解 FZU - 2206 找规律,思路题
给出n,求f(n)。Input第一行一个正整数T,表示数据组数。 接下来T行,每行一个正整数n。 T<=20,n<=2015000000。Output对于每组数据,输出一行f(n)。Sample Input2120150001Sample Output201520152014由表达式分析:f(20150005)=f(f(20150005-2015))=f(20150005-20...原创 2018-03-23 17:10:34 · 196 阅读 · 0 评论 -
据说题目很水 FZU - 2205 思路题
Sunday最近对图论特别感兴趣,什么欧拉回路什么哈密顿回路,又是环又是树。在看完一本书后,他对自己特别有信心,便找到大牛牛犇犇,希望他出一题来考考自己。在遥远的古代东方有N个城市,它们之间可以通过双向的道路相连。任意两个城市由不超过一条道路直接相连,而且没有城市的道路连向自身。但是牛犇犇是个纯情的小伙子,尽管他还没有女朋友,但他还是很讨厌第三者,以至于讨厌三这个数字。所以他希望Sunday能够构...原创 2018-03-23 17:55:46 · 222 阅读 · 0 评论 -
中位数计数 51Nod - 1682 (思路题,详解)
https://cn.vjudge.net/problem/51Nod-1682中位数定义为所有值从小到大排序后排在正中间的那个数,如果值有偶数个,通常取最中间的两个数值的平均数作为中位数。现在有n个数,每个数都是独一无二的,求出每个数在多少个包含其的区间中是中位数。Input第一行一个数n(n<=8000) 第二行n个数,0<=每个数<=10^9OutputN个数,依次表示第i...原创 2018-04-26 19:26:01 · 451 阅读 · 0 评论 -
大数删除k位是否能整除3,MG loves apple(HDU)
题意:求去掉KK位数字后,不含前导零,且数字和是否能被三整除。我们设S0S0、S1S1、S2S2分别为原串上mod 3=0mod3=0、11、22数字的个数。 我们假定删除取模后为00、11、22的数字各Aa、Bb、Cc个,则显然有0<=A<=S0,0<=B<=S1,0<=C<=S20<=A<=S0,0<=B<=S1,0<=C<=S2且K=A+B+CK=A+B+C且Sum mod3=(A∗0+B∗1+C∗2)mod3=(S0∗0+S1∗1+S2∗2)mod3=bias。 枚举CC的值,我们可得mod原创 2017-04-11 08:16:48 · 1353 阅读 · 0 评论 -
HDU 2819 Swap 二分匹配 (思路题)
题意:给你一个矩阵,让你交换任意两行,或者是任意两列,次数不限,若可以使得主对角线上的数字都为1,则输出你交换的是那些行,交换的是那些列,若不可行则输出-1。交换a和b两行输出R a b表示交换a和b两列输出C a b表示思路:若你只交换行(hang)不行(xing)的话,那么你交换列也是不行的,行(hang)列都交换也不行(xing),所以你只用试着交换行,或者列即可;原创 2017-08-01 18:37:19 · 338 阅读 · 0 评论 -
枚举加二分找最优解Kindergarten Election
题意:有一些小朋友要选领导者,总共有n个人,每人有一票,现在给出了每个人(除了第一个小朋友)都投票给谁。现在第一个小朋友想当领导者,他可以贿赂其他小朋友(使这个小朋友把票投给他),给出每个小朋友(除了第一个小朋友)被贿赂需要的棒棒糖数量;他所得的票数必须是最高的(不能并列),现在求他最少需要多少棒棒糖才能当领导者。原创 2017-04-08 10:58:04 · 474 阅读 · 0 评论 -
HDU 5317 RGCDQ(2015多校联合)
HDU 5317 RGCDQ(2015多校联合)题意: F(n)=m;意思是n这个数能分解成几种素数因子,例如12=2*2*3;12有两种素数因子 ,so:f[12]=2;2<=L < R<=1000000,【L,R】之间任选两个数 i,j,求GCD(F(i),F(j))的最大值;原创 2017-03-15 18:18:38 · 352 阅读 · 0 评论 -
思路题,子矩阵codeforces 364 A. Matrix
题址: http://codeforces.com/problemset/problem/364/A A. Matrix time limit per test1 second memory limit per test25原创 2017-04-01 12:34:11 · 440 阅读 · 0 评论 -
河南省第九届ACM程序设计竞赛。问题 F: Decimal integer conversion
题意:有一个n,他有一个n的错一位的二进制数字,还有一个n的错一位的三进制数字。求n是多少?思路:暴力枚举出所有情况。原创 2017-04-18 16:51:33 · 480 阅读 · 0 评论 -
搜索练习8//hdu/problem4771 /Stealing Harry Potter's Precious/bfs+dfs较难的搜索题
bfs+dfs题意:现在有一个@他要到k个点捡东西,求(全部捡完的)最短距离;如果捡不完输出-1。思路:因为k很小(不要把bfs弄得太复杂))(这道题只是把最短路和搜索合到一块,把这两部分分开想),首先要用搜索把所有两个物品的距离求出来,然后就是最短路问题了。(没错就是这么简单,但是比赛的时候思路没想到,赛后,自己要认真补题了,认真思考到底哪里没想到,不要把问题复杂化)原创 2017-04-30 19:14:01 · 568 阅读 · 0 评论 -
HDU4790 Just Random 容斥原理,数学思路题
题意:在两个区间中各找一个数字,两个数字的和取余p=m;这样符合条件的概率是多少。思路:分母很好算,区间长度乘积。分子分为3部分,先把区间分为两部分,一部分是长度p倍数的区间,剩下一部分是余下的不够长度p的区间。举个栗子,任意一个数字都能在0,1,2中找到一个数字,使他们的和为3的倍数,和也可以是3的倍数加上一个余数。并且2,3,4也符合上面的结论,而且一定能找的一个且仅有一个。这两个区间的整数部分很好算,重点是求两个余出的区间中匹配数量。举个栗子。p=8,m=12,3,4,5,6(两个余下的区间原创 2017-05-02 17:31:06 · 413 阅读 · 0 评论 -
最短路练习12/poj/2502 Subway dijkstar,spfa,floyd都可以解决
题目链接:http://poj.org/problem?id=2502SubwayTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 9766 Accepted: 3163DescriptionYou have just moved from a quiet Waterloo neighbourhood to a big, noisy...原创 2017-04-26 15:03:40 · 970 阅读 · 2 评论 -
思路题 素因子 HDU 5750
题意:为你一个n和一个d;在2到n中找出一些数,例如6,它有因子2,3(因子除了1和它本身,下同);所以6的最大因子是3,现在在2到n中找出一些数,这些数的最大因子是d;求这些数有多少个;思路:假设一个数为a,使得d*a<n;如果a不是素数的话,a总是有一个因子b,使得b*d>d,即a*d的因子b*d比因子d大,所以a*d一定不符合条件,如果a>d&&d*a<n,a*d也一定不符合条件,因为a比d大;如果a比d的其中一个因子大,就可以替换那个因子得到比d大的数字,所以当d%a==0;时说明比a大的素数一原创 2017-04-13 19:04:11 · 346 阅读 · 0 评论 -
二分答案找最优解 codeforces problem/551/C GukiZ hates Boxes
题意:1--n上有若干箱子,现在有学生m名。学生都在0处,每走一个单位需要1分钟,每搬一个箱子需要1分钟,问把所有箱子搬完最少需要多少分钟?思路:假设需要k分钟,我们可以模拟出k分钟每个学生走的路和搬的箱子数量,看是否每个人都干活了,如果有学生没干活,箱子都搬完了,说明k偏大,减小k继续模拟。如果每个人都干活k分钟箱子还没搬完,说明k分钟不够,增加k继续模拟;这题用二分答案找最优解。设t为最后一个有箱子的位置。sum为箱子总数。k的范围是(t+1,sum+t);原创 2017-04-08 10:47:40 · 1033 阅读 · 0 评论 -
二分+倍增思想 “玲珑杯”ACM比赛 Round #13/B
二分+倍增思想题意:混乱度为当前的序列排好序后与V【】的乘积和,当混乱度大于M时,把当前序列全部扔掉,并且让c+1,输出每个数的c值是多少。思路:左端点固定,倍增找右端点的范围,二分找右端点,然后左端点移到右端点+1,重复这个过程;比赛的时候没听说过倍增思想,一直超时。这个思想挺重要的,学到了0.0原创 2017-04-05 19:53:48 · 431 阅读 · 0 评论 -
NYOJ 2333 A simple math problem(思路题)
http://www.codedream.ren/JudgeOnline/problem.php?id=2333问题 I: A simple math problem时间限制: 1 Sec 内存限制: 512 MB题目描述Given a number n, you should calculate 123456 . . . 11121314 . . . n m原创 2017-06-30 17:58:30 · 696 阅读 · 0 评论 -
2018年清华校赛k题4D蛋糕详解
这个题偶尔拿出来想想,时隔一年多,终于有了灵感,心里的石头落地了。这个题目网上我找不到题解,所以今天发个博客记录一下。我题解写纸上了,也没有写代码。原创 2019-07-22 16:48:07 · 464 阅读 · 1 评论