随笔分类 -  枚举

 
acwing 428 数列 ——练习二进制位运算与二进制映射比较经典的题目
摘要:给定一个正整数k,把所有k的方幂及所有有限个互不相等的k的方幂之和构成一个递增的序列,例如,当k=3时,这个序列是: 1,3,4,9,10,12,13,… 该序列实际上就是:30,31,30+31,32,30+32,31+32,30+31+32,…30,31,30+31,32,30+32,31+32 阅读全文
posted @ 2021-02-09 07:49 noip之路 阅读(92) 评论(0) 推荐(0)
换钱问题(经典枚举样例)
摘要:Ø 要将一张100元的大钞票,换成等值的10元、5元、2元、1元一张的小钞票,每次换成40张小钞票,每种至少1张。如,有一种换法: Ø 10元: 1 张 Ø 5元: 5 张 Ø 2元: 31 张 Ø 1元: 3 张 Ø问:一共有多少种换法。 数学模型: Ø10元: a 张 (不超过10张) Ø 5元 阅读全文
posted @ 2016-03-01 10:11 noip之路 阅读(1087) 评论(0) 推荐(0)
1943(2.1)
摘要:分析:枚举 条件: 1<a,b,c<=100; a<=b; a*a + b*b = c*c 枚举 a:2~100;b:a~100. 根据输出要求,先枚举a,再枚举b #include<cstdio> #include<cmath> int main(){ int a,b,c; for (int a= 阅读全文
posted @ 2016-02-26 18:26 noip之路 阅读(177) 评论(0) 推荐(0)
1813(2.1)
摘要:枚举的第5题,咋一看没有思路。仔细研究样列,又找到了该游戏 ,实践了一下,才稍微有些思路。 实际上答案基本在题干中:根据上面的规则,我们知道1)第2次按下同一个按钮时,将抵消第1次按下时所产生的结果。因此,每个按钮最多只需要按下一次;2)各个按钮被按下的顺序对最终的结果没有影响;3)对第1行中每盏点 阅读全文
posted @ 2016-02-17 15:34 noip之路 阅读(289) 评论(0) 推荐(0)
1812
摘要:分析: 首先考虑枚举那些量,如果四个变量全部枚举,则肯定超时。 那么是枚举bcd呢,还是枚举其它? 输出要求:请按照a的值,从小到大依次输出。当两个完美立方等式中a的值相同,则b值小的优先输出、仍相同则c值小的优先输出、再相同则d值小的先输出。 据此最好按 abc的顺序枚举,其中a>c>=b. 另外 阅读全文
posted @ 2016-02-16 15:56 noip之路 阅读(207) 评论(0) 推荐(0)
1809两倍(2.1)
摘要:数据非常小,直接枚举即可! #include<cstdio> int a[30]; int main(){ int n=1; scanf("%d",&a[n]); while (a[n]!=0){ n++; scanf("%d",&a[n]); } n=n-1; int sum=0; for (in 阅读全文
posted @ 2016-02-16 14:08 noip之路 阅读(529) 评论(0) 推荐(0)
1752:鸡兔同笼(2.1)
摘要:最朴素的方法: #include<cstdio> int main(){ int a,maxn=-1,minn=32769; scanf("%d",&a); if (a%2==0) maxn=a/2; if (a%4==0) minn=a/4; for (int t=1;t<=a/4;t++) fo 阅读全文
posted @ 2016-02-16 13:27 noip之路 阅读(712) 评论(0) 推荐(0)
1749:数字方格(2.1)
摘要:简单枚举 数据范围: (0 <= n <= 100) 所以不需要加任何优化 #include<iostream> #include<cstdio> int main(){ int maxh=-100,a1,a2,a3,n; scanf("%d",&n); for (int i=n;i>=0;i--) 阅读全文
posted @ 2016-02-16 12:15 noip之路 阅读(554) 评论(0) 推荐(0)
uva11059
摘要:除法(Division,uva725)输入整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列(可以有前导0),2#includeusing namespace std;int a[30];int main(){int n,m=0;while ... 阅读全文
posted @ 2015-07-03 10:00 noip之路 阅读(357) 评论(0) 推荐(0)
uva725
摘要:除法(Division,uva725) 输入整数n,,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列(可以有前导0), 输入:多组数据,最后以0作为结束标记 输出:每组数据间用空行隔开,如果无解则输出 ``There are no solutio 阅读全文
posted @ 2015-07-01 11:07 noip之路 阅读(514) 评论(0) 推荐(0)