before
以前学的
火锅化红油_
什么都不会的渣渣
展开
-
qsort() && sort() 排序函数
#include#include#includeint s[100], n, i;int cmp(const void *a, const void *b){ return(*(int*)b-*(int*)a);}int main(){ scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &s[i]); qso原创 2016-09-04 17:45:30 · 352 阅读 · 0 评论 -
蓝桥杯BASIC21 sine之舞
问题描述:An=sin(1-sin(2+sin(3-sin(4+...sin(n))...) Sn=(...A1+n)A2+n-1)A3+...+2)An+1原创 2016-08-21 15:41:30 · 620 阅读 · 0 评论 -
蓝桥杯第六届 让我怎能过大年(dfs)
/*有如下的加法算式。其中每个汉字代表一个数字。(如果存在对齐问题,可参见【图1.png】) 年 大年 过大年 能过大年 怎能过大年 我怎能过大年+ 让我怎能过大年--原创 2017-03-05 12:58:49 · 1372 阅读 · 0 评论 -
蓝桥杯第七届 方格填数(dfs)
方格填数如下的10个格子 +–+–+–+–+ | # | ? | ? | ? | +–+–+–+–+ | ? | ? | ? | ? | +–+–+–+–+ | ? | ? | ? | # | +–+–+–+–+#:不能填数字;?:需要填写数字的空格 填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻)一共有多少种可能的填数原创 2017-03-03 14:59:25 · 1098 阅读 · 0 评论 -
nyoj2 括号配对问题
括号配对问题时间限制:3000 ms | 内存限制:65535 KB难度:3描述 现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYes#includ原创 2017-02-22 17:09:27 · 671 阅读 · 0 评论 -
(区别)递归与迭代&&递归与递推&&迭代与递推
(1)分别用递归法和迭代法求阶乘阶乘的定义往往如下:#include #include // 递归计算阶乘long factorial_recursion(int n){ if(n<=0){ return 1; }else{ return n * factorial_recursion(n-1); }}/原创 2017-02-21 12:28:42 · 2343 阅读 · 0 评论 -
nyoj325 zb的生日(dfs)
时间限制:3000 ms | 内存限制:65535 KB难度:2描述今天是阴历七月初五,acm队员zb的生日。zb正在和C小加、never在武汉集训。他想给这两位兄弟买点什么庆祝生日,经过调查,zb发现C小加和never都很喜欢吃西瓜,而且一吃就是一堆的那种,zb立刻下定决心买了一堆西瓜。当他准备把西瓜送给C小加和never的时候,遇到了一个难题,never和C小加原创 2017-02-19 18:13:19 · 476 阅读 · 0 评论 -
nyoj58 最少步数(dfs)
时间限制:3000 ms | 内存限制:65535 KB难度:4描述这有一个迷宫,有0~8行和0~8列: 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,1,0,1,0,0,1 1,1,0原创 2017-02-19 14:52:09 · 661 阅读 · 0 评论 -
hdu1232 通畅工程讲解(并查集)
先来看一个实例,杭电1232畅通工程 首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问你整幅图一共有几个连通分支,也就是被分成了几个互相独立的块。像畅通工程这题,问还需要修几条路,实质就是求有几个连通分支。如果是1个连通分支,说明整幅图上的点都连起来了,不用转载 2017-02-18 20:45:57 · 508 阅读 · 0 评论 -
蓝桥杯ALGO34 纪念品分组(贪心)
问题描述 元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得的纪念品价值 相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时 间内发完所有纪念品,乐乐希望分组的数目最少。 你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。输入原创 2017-02-18 16:04:25 · 953 阅读 · 0 评论 -
万能头文件 #include<bits/stdc++.h>
include 这个头文件包含以下等等C++中包含的所有头文件:#include #include #include #include #include #include #include #include #include #include #include #include #include .......原创 2017-02-17 17:24:55 · 6860 阅读 · 0 评论 -
51nod1099 任务执行顺序(贪心)
基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题有N个任务需要执行,第i个任务计算时占R[i]个空间,而后会释放一部分,最后储存计算结果需要占据O[i]个空间(O[i] < R[i])。例如:执行需要5个空间,最后储存需要2个空间。给出N个任务执行和存储所需的空间,问执行所有任务最少需要多少空间。原创 2017-02-17 17:00:21 · 440 阅读 · 0 评论 -
可以用贪心解决的背包问题
问题:在选择物品i装入背包时,可以选择物品的一部分,而不一定要全部装入背包。 计算每种物品的单位重量价值作为贪心选择的依据指标,选择单位重量价值最高的物品,将尽可能多的该物品装入背包,依此策略一直地进行下去,直到背包装满为止。 在零一背包问题中贪心选择之所以不能得到最优解原因是贪心选择无法保证最终能将背包装满,部分闲置的背包空间使每公斤背包空间的价值降低了。 #原创 2017-02-17 14:55:30 · 921 阅读 · 0 评论 -
hiho1037 数字三角形 (数塔 dp)
时间限制:10000ms单点时限:1000ms内存限制:256MB问题描述小Ho选择的迷宫是一个被称为“数字三角形”的n(n不超过200)层迷宫,这个迷宫的第i层有i个房间,分别编号为1..i。除去最后一层的房间,每一个房间都会有一些通往下一层的房间的楼梯,用符号来表示的话,就是从第i层的编号为j的房间出发会有两条路,一条通向第i+1层的编号为j的房间,另一条会原创 2017-02-16 15:14:21 · 588 阅读 · 0 评论 -
nyoj1249 物资调度(dp)
物资调度时间限制:1000 ms | 内存限制:65535 KB难度:2描述 某地区发生了地震,灾区已经非常困难,灾民急需一些帐篷、衣物、食品和血浆等物资。可通往灾区的道路到处都是塌方,70%以上的路面损坏,桥梁全部被毁。国家立即启动应急预案,展开史上最大强度非作战空运行动,准备向灾区空投急需物资。一方有难,八方支援。现在已知有N个地方分别有A1,A2,….,An个原创 2017-02-16 11:53:28 · 585 阅读 · 0 评论 -
hdu2191 多重背包(dp)
Problem Description急!灾区的食物依然短缺!为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买。请问:你用有限的资金最多能采购多少公斤粮食呢?Input输入数据首先包含一个正整数C,表示有C组测试用例,每组测试用例的原创 2017-02-15 18:58:29 · 363 阅读 · 0 评论 -
hdu1176 免费馅饼(数塔 dp)
Problem Description都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中转载 2017-02-15 14:17:44 · 453 阅读 · 0 评论 -
nyoj17 单调递增最长子序列(dp)
时间限制:3000 ms | 内存限制:65535 KB难度:4描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0随后的n行,每行有一个字符串,该字符串的长度不会超过10000输出输出字符串的最长递增子序列的长度样例输入3aaaababcabklmncdefg样例输原创 2017-02-14 17:34:20 · 444 阅读 · 0 评论 -
hdu2546 饭卡(01背包 dp)
Problem Description电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额。如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够)。所以大家都希望尽量使卡上的余额最少。某天,食堂中有n种菜出售,每种菜可购买一次。已知每种菜的价格以及卡上的余额,问最少可使卡上的余额为多少。Inp原创 2017-02-14 15:26:37 · 564 阅读 · 0 评论 -
完全背包问题讲解(dp)
此题之前先分析两种常见的背包问题,01背包与完全背包01背包:在M件物品中取出若干件物品放到背包中,每件物品对应的体积v1,v2,v3,....对应的价值为w1,w2,w3,,,,,每件物品之多拿一件。解决方案 考虑用动态规划的方法来解决,这里的: 阶段是:在前N件物品中,选取若干件物品放入背包中; 状态是:在前N件物品中,选取若干件物品放入所剩空间为W的背包中的所能转载 2017-02-14 14:42:49 · 10161 阅读 · 0 评论 -
nyoj311 完全背包(dp)
时间限制:3000 ms | 内存限制:65535 KB难度:4描述直接说题意,完全背包定义有N种物品和一个容量为V的背包,每种物品都有无限件可用。第i种物品的体积是c,价值是w。求解将哪些物品装入背包可使这些物品的体积总和不超过背包容量,且价值总和最大。本题要求是背包恰好装满背包时,求出最大价值总和是多少。如果不能恰好装满背包,输出NO输入第一行:原创 2017-02-14 14:32:52 · 540 阅读 · 0 评论 -
蓝桥杯第六届 牌型种数(dfs)
小明被劫持到X赌城,被迫与其他3人玩牌。一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。这时,小明脑子里突然冒出一个问题:如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序,自己手里能拿到的初始牌型组合一共有多少种呢?请填写该整数,不要填写任何多余的内容或说明文字。#include#includeint sum=0,ans原创 2017-02-12 19:29:36 · 489 阅读 · 0 评论 -
01背包问题讲解(dp)
给大家附上一个题目吧,便于理解ctest有n个苹果,要将它放入容量为v的背包。给出第i个苹果的大小和价钱,求出能放入背包的苹果的总价钱最大值。输入:每组测试数据第一行为2个正整数,分别代表苹果的个数n和背包的容量v接下来的n行,每行2个正整数,用空格隔开,分别代表苹果的大小c和价钱w 01背包其实就是遍历所有可能情况 然后取最优的结果 和搜索差不多 不过转载 2017-02-12 13:53:45 · 972 阅读 · 0 评论 -
导弹拦截(最长下降子序列 dp)
题目描述:某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。输入:每组输入有两行,第原创 2016-12-27 16:12:23 · 1061 阅读 · 0 评论 -
蓝桥杯第四届 第39级台阶
礼堂前的台阶数,恰好是39级! 如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?输出格式:输出一个整数(不用管是左脚还是右脚迈,只要走的步数是偶数即可)#includeint count=0;int s(int num,int step){ if(num>39原创 2016-12-20 22:22:03 · 441 阅读 · 0 评论 -
蓝桥杯第五届 李白打酒
一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱: 无事街上走,提壶去打酒。 逢店加一倍,遇花喝一斗。 这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。 请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则:babaabbabbabbbb 就是合理的次序。像这样的答案一共有多少呢?请你计算出原创 2016-12-20 20:51:15 · 528 阅读 · 0 评论 -
蓝桥杯ALGO122 未名湖边的烦恼(递归 递推)
问题描述 每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求的人(比如都是租鞋或都是还鞋)交换位置是同一种排法)输入格式 两个整数,表示m和n输出格原创 2016-12-20 20:18:39 · 615 阅读 · 0 评论 -
蓝桥杯第六届 无穷分数(递归)
无穷分数无穷的分数,有时会趋向于固定的数字。请计算【图1.jpg】所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0。请填写该浮点数,不能填写任何多余的内容。#includedouble fenshu(double n){ if(n==100) return n; return n/(n+fenshu(n+1));原创 2016-12-16 01:58:22 · 2259 阅读 · 0 评论 -
蓝桥杯第六届 立方变自身
立方变自身观察下面的现象,某个数字的立方,按位累加仍然等于自身。1^3 = 1 8^3 = 512 5+1+2=817^3 = 4913 4+9+1+3=17...请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个?请填写该数字,不要填写任何多余的内容或说明性的文字。#includeint main(){ int i,temp,原创 2016-12-14 17:54:04 · 1568 阅读 · 0 评论 -
不用中间变量交换 a ,b(三种方法)
1、加减法:该方法可以交换整型和浮点型数值的变量,但在处理浮点型的时候有可能出现精度的损失a = a + b;b = a - b;a = a - b;2、异或法:可以完成对整型变量的交换,对于浮点型变量它无法完成交换。a = a^b;b = a^b;a = a^b;3、乘除法:可以处理整型和浮点型变量,但在处理浮点型变量时也存在精度损失问题。而且乘除法比加减法要多一转载 2016-12-14 16:58:52 · 2635 阅读 · 0 评论 -
蓝桥杯第六届 加法变乘法
加法变乘法我们都知道:1+2+3+ ... + 49 = 1225现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015比如:1+2+3+...+10*11+12+...+27*28+29+...+49 = 2015就是符合要求的答案。 请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。注意:需要你提交的是一个整数,不原创 2016-12-14 15:14:42 · 403 阅读 · 0 评论 -
蓝桥杯第六届 三羊献瑞(dfs)
三羊献瑞观察下面的加法算式: 祥 瑞 生 辉 + 三 羊 献 瑞------------------- 三 羊 生 瑞 气(如果有对齐问题,可以参看【图1.jpg】)其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。#include#includeint ma原创 2016-12-14 14:57:38 · 600 阅读 · 0 评论 -
蓝桥杯第六届 立方尾不变
立方尾不变有些数字的立方的末尾正好是该数字本身。比如:1,4,5,6,9,24,25,....请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。请提交该整数,不要填写任何多余的内容。#includeint main(){ int j,count=0; for(int i=0;i<10000;i++) { j=原创 2016-12-14 14:17:13 · 2004 阅读 · 1 评论 -
蓝桥杯第七届 寒假作业(dfs)
#include#includevoid init();void dfs(int n);int a[14];int count=0;int main(){ init(); dfs(1); printf("count=%d",count); return 0; }void init(){ for(int j=1;j<14;j++) a[j]=j;}bool原创 2016-11-28 20:23:08 · 3216 阅读 · 3 评论 -
蓝桥杯第七届 生日蜡烛
生日蜡烛某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。#includeint main(){ for(int i=0;i<236;i++)原创 2016-11-23 13:31:45 · 1308 阅读 · 0 评论 -
蓝桥杯第七届 有奖猜谜
有奖猜谜小明很喜欢猜谜语。最近,他被邀请参加了X星球的猜谜活动。每位选手开始的时候都被发给777个电子币。规则是:猜对了,手里的电子币数目翻倍,猜错了,扣除555个电子币, 扣完为止。小明一共猜了15条谜语。战果为:vxvxvxvxvxvxvvx其中v表示猜对了,x表示猜错了。请你计算一下,小明最后手里的电子币数目是多少。请填写表示最后电子币数目的数字。原创 2016-11-22 13:12:48 · 3698 阅读 · 2 评论 -
蓝桥杯第七届 平方怪圈
平方怪圈如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。对新产生的正整数再做同样的处理。如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。请写出这个循环圈中最大的那个数字。请填写该最大数字。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。#includeint main(){ int i,原创 2016-11-22 11:47:09 · 6778 阅读 · 11 评论 -
全排列方法一(递归)
#includevoid swap(int *arry,int i,int j){ int temp=arry[i]; arry[i]=arry[j]; arry[j]=temp;}void printfArry(int *arry,int len){ int i; for(i=0;i<len;i++) printf("%d ",arry[i]); printf("\原创 2016-11-20 18:04:50 · 755 阅读 · 0 评论 -
蓝桥杯BASIC29 高精度加法(数组 高精度)
#include #includevoid add(char string_a[101], char string_b[101]){ int inter_a[101], inter_b[101]; int product[101]; int i, j; memset(product, 0, sizeof(product)); memset(inter_a, 0, sizeof(int原创 2016-09-10 13:53:16 · 1663 阅读 · 0 评论 -
蓝桥杯BASIC30 阶层运算(高精度)
#include #include #include #define MAX 4000int main() { int n, a[MAX], i, j, s, r = 0; scanf("%d", &n); memset(a, 0, sizeof(a)); a[0] = 1; for (i = 2; i <= n; i++){ for (j = 0; j<MAX; j+转载 2016-09-08 15:45:45 · 811 阅读 · 0 评论