- 博客(14)
- 资源 (1)
- 收藏
- 关注
原创 洛谷 小A点菜
题目背景uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种。uim指着墙上的价目表(太低级了没有菜单),说:“随便点”。题目描述不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M餐馆虽低端,但是菜品种类不少,有N种(N小A奉行“不把钱吃光不罢休”,所以他点单一定刚好吧uim身上所有钱花完。他想知道有多少种点菜方法。由于小A
2017-08-12 08:42:22
297
原创 最长不下降子序列—递归输出最长链
#includeusing namespace std;int n,f[107][4],maxx,maxl;int dg(int n){ if(f[n][3]==0) cout<<f[n][1]<<" "; else { dg(f[n][3]); cout<<f[n][1]<<" "; }}int main(){ cin>>n; f
2017-06-12 20:09:12
563
原创 1756八皇后 二进制优化
#includeusing namespace std;int lim=(1<<8)-1;int p;int t=1,r[94];int dfs(int row,int ld,int rd){ if(row==lim) { t++; r[t]=r[t-1]; } else { int pos=lim
2017-05-01 11:28:57
462
原创 n皇后方案总数的位运算优化
#includeusing namespace std;int n,ans,lim;int dfs(int row,int ld,int rd){ int pos; if(row==lim) ans++; else { pos=(lim) & ~(row|ld|rd); while(pos) { int p=pos&(-pos);
2017-04-30 10:31:41
314
原创 金币 改进
45:金币描述国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里,每天收到三枚金币;之后四天(第七、八、九、十天)里,每天收到四枚金币……这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币(N为任意正整数)。你需要编写一
2017-04-30 08:47:54
540
原创 2.1 1973确定进制
1973:确定进制描述6*9 = 42 对于十进制来说是错误的,但是对于13进制来说是正确的。即, 6(13) * 9(13) = 42(13), 而 42(13) = 4 * 131+ 2 * 130= 54(10)。 你的任务是写一段程序读入三个整数p、q和 r,然后确定一个进制 B(2<=B<=16) 使得 p * q = r. 如果 B有很多选择, 输出最小的一个。例如
2017-04-09 10:07:33
1100
原创 2.1 2722 和数
2722:和数描述给定一个正整数序列,判断其中有多少个数,等于数列中其他两个数的和。 比如,对于数列1 2 3 4, 这个问题的答案就是2, 因为3 = 2 + 1, 4 = 1 + 3。输入共两行,第一行是数列中数的个数n ( 1 输出一个整数,即数列中等于其他两个数之和的数的个数。样例输入41 2 3 4样例输出2提示:判断的是数的个数,比如1+4=5,2+3=
2017-04-09 09:22:29
2371
原创 2.1 7621硬币面值组合
7621:硬币面值组合描述使用1角、2角、5角硬币组成 n 角钱。 设1角、2角、5角的硬币各用了a、b、c个,列出所有可能的a, b, c组合。 输出顺序为:先按c的值从小到大,若c相同则按b的值从小到大。输入一个整数n(1 输出输出有若干行,每行的形式为:i a b c第1列i代表当前行数(行数从001开始,固定3个字符宽度,宽度不足3的用0填充),后面3列
2017-04-09 09:03:19
1506
转载 高精度加乘法——四位改良版
#includeusing namespace std;string st1,st2;int a[500],b[500],len1,len2,len,c[500],m;int main(){ cin>>st1>>st2; int l1=st1.size(),l2=st2.size(); for(int i=l1-1,j=0;i>=0;i--,j++) {
2017-03-12 11:33:06
213
原创 1.13 12 分数求和
12:分数求和描述输入n个分数并对他们求和,并用最简形式表示。所谓最简形式是指:分子分母的最大公约数为1;若最终结果的分母为1,则直接用整数表示。如:5/6、10/3均是最简形式,而3/6需要化简为1/2, 3/1需要化简为3。 分子和分母均不为0,也不为负数。输入第一行是一个整数n,表示分数个数,1 接下来n行,每行一个分数,用"p/q"的形式表示,不含空格,
2017-03-11 17:06:32
1618
原创 1.13 08特殊日历计算
08:特殊日历计算描述有一种特殊的日历法,它的一天和我们现在用的日历法的一天是一样长的。它每天有10个小时,每个小时有100分钟,每分钟有100秒。10天算一周,10周算一个月,10个月算一年。现在要你编写一个程序,将我们常用的日历法的日期转换成这种特殊的日历表示法。这种日历法的时、分、秒是从0开始计数的。日、月从1开始计数,年从0开始计数。秒数为整数。假设 0:0:0 1.1.2000
2017-03-11 16:14:41
1469
原创 1.6 10大整数加法
描述求两个不超过200位的非负整数的和。输入有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。输出一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。样例输入2222222222222222222233333333333333333333样例输出55555555555555555555#include#in
2017-03-05 11:43:21
434
原创 1.13 06 循环数
描述若一个n位的数字串满足下述条件,则称其是循环数(cyclic):将这个数字串视为整数(可能带有前导0),并用任意一个 1 到 n 之间(包含1和n)的整数去乘它时, 会得到一个将原数字串首尾相接后,再在某处断开而得到的新数字串所对应的整数。例如,数字 142857 是循环数,因为: 142857 *1 = 142857 142857 *2 = 285714 142857 *3
2017-03-05 11:12:59
1590
原创 666放苹果
666放苹果描述把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。输入第一行是测试数据的数目t(0 输出对输入的每组数据M和N,用一行输出相应的K。样例输入17 3样例输出8
2017-03-05 09:00:43
2592
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人