模拟
文章平均质量分 73
AlmostFree
这个作者很懒,什么都没留下…
展开
-
hrbust 1178 分数加减(模拟+数论gcd,lcm)
题意是要模拟分数加减。原创 2014-06-26 12:31:45 · 572 阅读 · 0 评论 -
hdu 2041 and hdu 2044 and hdu 2045(打表 递归)(备战LQB)
题意是走楼梯,一次可走一阶或两阶,给个台阶,问有几种走法,初中数学题。题目很简单,但是提供了一个打LQB的思路,就是注意斐波那契数列的实际应用。由题目可知,每次只能走一级或两级。因此从第一级走上第二级只能走一步,只有1种走法。从第一级走上第三级,可以从第一级直接走两步,也可以从第二级走一步。有2种走法走上第n级,可以从第n-1级走一步上来,也可以从第n-2级走两步上来。原创 2014-03-17 11:25:48 · 626 阅读 · 0 评论 -
hdu 2047 (双路递归)(备战LQB)
题意是排长度为n的字符串,只能用三种字母且o与o不能连用。采用每次在原来合法字符串最后一个字母后面加一个字母的方法。这样会出现,原字符串最后一个字母 为o 与 不为o 的情况。若原字符串末尾字母不为o,则此路D [n] [0]只保存末尾加o情况,即D [n] [0]=D[n-1] [1] ;若原字符串末尾字母为o,则此路D[n] [1]保存末尾加e与f的情况,即D[n] [1]原创 2014-03-18 16:37:17 · 701 阅读 · 0 评论 -
2013 蓝桥杯C/C++本科B组 带分数(牛逼库函数)(备战LQB)
100 可以表示为带分数的形式:100 = 3 + 69258 / 714还可以表示为:100 = 82 + 3546 / 197注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。类似这样的带分数,100 有 11 种表示法。 题目要求:从标准输入读入一个正整数N(N程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。注意:不要求输出每个原创 2014-03-20 21:40:51 · 1103 阅读 · 1 评论 -
uva 457 Linear Cellular Automata(模拟)
uva 457 Linear Cellular Automata英语。。。。40个培养基,起始状态除了20号为1外,其他全部为0。已知一个培养基是会影响隔壁两个培养基的,假设1号左边无穷远处有一个培养基为0,,40号右边无穷远处也有一个培养基为0。给出一个DNA序列,元素均不大于3.求50天培养基的变化。每天某个培养基的变化是 x=a[j-1]+a[j]+a[j+1], DNA[x].原创 2014-06-14 21:02:50 · 535 阅读 · 0 评论 -
uva 445 uva 489 uva 490 uva 694(模拟)
uva 445 Marvelous Mazes原创 2014-06-14 20:59:19 · 512 阅读 · 0 评论 -
uva 414 uva 458 uva 494(水题两三道)
uva 414:原创 2014-06-09 18:06:04 · 671 阅读 · 0 评论 -
uva 10055 uva 10071 uva 10300(水题两三道)
情歌两三首 水题两三道好久没敲代码了为暑假大作战热热身原创 2014-06-07 20:09:15 · 552 阅读 · 0 评论 -
poj 1250 Tanning Salon(模拟)
题意是告诉你有几个床位,然后客人来,走,来,走,问几个客人走了。原创 2014-04-28 10:37:10 · 532 阅读 · 0 评论 -
poj 3061 Subsequence(尺取法)
题意是给定一个数的序列 a[ ] 和一个数字S,原创 2014-04-20 18:57:24 · 576 阅读 · 0 评论 -
poj 1657 Distance on Chessboard(模拟贪心)
题意是给定一个棋盘上的起始位置和终止位置,分别判断王、后、车、象从起始位置到达终止位置需要的步数。简单的模拟加贪心。假设起点距离终点的水平与竖直分量为x y。贪心:王:到达目标点处的的步数是x y中大的一个。后:若点在一条直线上或对角线上,直接一步到达;若点不在一条直线上,则另需一步调整,共两步。车:若点在一条直线上,一步到达;若不在一条直线上,因为步数不变,所以两原创 2014-04-02 17:21:58 · 563 阅读 · 0 评论 -
hdu 4585 set + pair
题意:少林方丈丢了少林的交战谱,现在要你来还原。方丈的攻击力为1000000000,他的id为1。每个和尚都有不同的攻击力和id,他们入少林的时候会与前辈发生一场战斗,挑选对象的时候,他会选择与他攻击力差的绝对值最小的前辈来打。当有俩前辈与其攻击力差值的绝对值相等的时候,他会选择攻击力小的那个前辈来干。现在按照入少林时间顺序给出这些和尚的攻击力和id,让你来还原少林的交战谱。原创 2015-08-24 15:43:59 · 426 阅读 · 0 评论 -
poj 2100 尺取法连续平方和
题意:给一个数 n (1e14)。求一段连续的数的数字,使得其平方和等于n。输出的时候,先输出有多少组,然后每组的开头输出有多少个元素,然后输出这些元素。解析:尺取法。需要注意的地方是s和t要从1开始,否则wa。代码:#include #include #include #include #include #include #includ原创 2015-08-03 15:01:26 · 899 阅读 · 0 评论 -
poj 2566 尺取法
题意:给一个大小为n(1e5)的数组,然后给k个数t 。要求在这个数组中连续一段的和的绝对值最接近数t的那一段的起点fr,终点to,和这一段和的绝对值ansSum 。解析:敲了一个晚上+早上,蛋疼。。。这题的解法很不容易想到。首先,尺取法适用的条件:1.连续的序列;2.序列满足单调性。这题明显不能满足第2个条件。所以,这题的做法是将n个数的前原创 2015-08-03 11:12:47 · 527 阅读 · 0 评论 -
poj 3185 贪心翻硬币 高斯消元
题意:有20个硬币,每次选择翻转,翻转i的时候,i-1 , i+1 都会被翻成相反面。现在给20个硬币的状态,求最少翻多少次能把这些硬币都翻成0。解析:翻两次等于没翻,从最左或者最右开始去翻就行了。这题数据好水而且很坑,没有检查越界访问都能过。。。好像hdu4200比较有学习意义。代码:#include #include #include #i原创 2015-08-03 16:15:26 · 435 阅读 · 0 评论 -
poj 2420 模拟退火
题意:给n个点,求与这n个点,距离和最接近的那个点是什么,输出这个最短距离。解析:模拟退火。在acdream那里学模拟退火,准备做去年西安网赛的题目。来自:http://blog.csdn.net/acdreamers/article/details/10019849代码:#pragma comment(linker, "/STACK:167原创 2015-09-16 21:40:46 · 386 阅读 · 0 评论 -
hdu 5017 模拟退火求最值
题意:给一个椭圆:然后求原点到这个椭圆距离最小的点的距离是多少。解析:依旧用模拟退火。修改了一个地方,初始温度从100改到了1,就行了。之前的也修改了。选z的时候,选离远点近的那个点就行了。代码:#pragma comment(linker, "/STACK:1677721600")#include #includ原创 2015-09-17 10:18:22 · 407 阅读 · 0 评论 -
hdu 2036 计算多边形面积(备战LQB)
题意就是在xoy平面上求多边形面积。解析:可以利用多边形求面积公式:S = 0.5 * ( (x0*y1-x1*y0) + (x1*y2-x2*y1) + ... + (xn*y0-x0*yn) )其中点(x0, y0), (x1, y1), ... , (xn, yn)为多边形上按 逆时针 顺序的顶点。代码:#include int main(){原创 2014-03-16 12:39:22 · 520 阅读 · 0 评论 -
hdu 2024 C语言合法标识符(ctype.h 库函数)(备战LQB)
教程:多用库函数,勤用库函数。isalpha语法:#include int isalpha( int ch );功能:如果参数是字母字符,函数返回非零值,否则返回零值。isalnum语法:#include int isalnum( int ch );功能:如果参数是数字或字母字符,函数返回非零值,否则返回零值。#include #inclu原创 2014-03-11 21:14:17 · 593 阅读 · 0 评论 -
uva 10152 ShellSort(模拟)
代码:#include #include #include using namespace std;const int maxn = 1000 + 1;int n;string a[maxn], b[maxn];int main(){ #ifdef LOCAL freopen("in.txt", "r", stdin); #endif // LOCA原创 2014-07-17 23:53:49 · 463 阅读 · 0 评论 -
poj 1664 小苹果(递推)
题意:M个苹果放N个篮子,共几种放法。原创 2014-06-27 17:07:12 · 658 阅读 · 0 评论 -
hdu 4112 Break the Chocolate(模拟)
题意是给一个N*M*K的立方体巧克力,求用手掰和用刀切将其分为 1 * 1 * 1的原创 2014-06-28 20:38:19 · 547 阅读 · 0 评论 -
poj 1852 ants(模拟+想象力)
题意是有一群蚂蚁在一根水平电线杆上原创 2014-07-01 11:43:43 · 454 阅读 · 0 评论 -
hdu 4727 The Number Off of FFF(模拟)
据说是去年的网络赛上最好做的一道题。题意是一群排好原创 2014-07-01 11:31:09 · 504 阅读 · 0 评论 -
hdu 4041 Eliminate Witches!(模拟,栈在树中的应用)
魔法少女小圆乱入。原创 2014-07-01 11:38:35 · 425 阅读 · 0 评论 -
uva 120 Stacks of Flapjacks(模拟)
题意是选定一个位置从后往原创 2014-07-01 20:35:17 · 407 阅读 · 0 评论 -
uva 253 Cube painting(模拟)
题意是一个正方体,每面可选择三种颜色可涂,但原创 2014-07-03 21:16:00 · 485 阅读 · 0 评论 -
uva 621 Secret Research(字符串水题)
按题意模拟就行了,S居然是任意的字符串,给你跪了啊。代码:原创 2014-07-03 21:54:43 · 463 阅读 · 0 评论 -
usaco 1.2 Palindromic Squares(进制转化)
考察进制转化 注意一些细节就可以了直接上代码:/*ID: who jayLANG: C++TASK: palsquare*/#includeint x[20],xlen,y[20],ylen,B;void change(int n){ int m; m=n; xlen=0; while(m) { x[++xlen]原创 2014-02-04 23:05:37 · 527 阅读 · 0 评论 -
usaco 1.2 Transformations(模拟)
我的做法就是一个一个情况枚举出来注意计算公式:( 变换后的矩阵记为C)顺时针旋转90°:C[i] [j]=A[n-j-1] [i](旋转180°和270° 可以多转几个九十度来推)对称:C[i] [n-j-1]=A[i] [j]代码有点长 。。。/*ID: who jayLANG: C++TASK: transform*/#includ原创 2014-02-02 20:08:28 · 503 阅读 · 0 评论 -
usaco 1.2 Milking Cows(类hash表)
第一种思路被卡了时间 到第二种思路的时候就觉得第一种思路太坑爹了 代码又长又臭还超时!!第一种思路:我不知道为什么最后一组数据会被卡 超时超了0.2s左右 大概想法是 快排加一个遍历 先将开始时间按升序排好 然后开始遍历比较 1 若 下一个开始beg[i] 小于 tem_end 则说明本组数据与上组数据是在连续的一个区间 取max( ed[i],tem_end )2 反之原创 2014-02-02 23:43:59 · 582 阅读 · 0 评论 -
usaco 1.2 Name That Number(数字字母转化)
巧妙的利用code[b[0]-'A'] 将字符ABC...Z转换为数字需要注意的是从新开一个数组 c [ ] 存储字符串 应人为的在末尾附上 ‘ \ 0 ’详见代码:/*ID: who jayLANG: C++TASK: namenum*/#include#includeint main(){ FILE *fin = fopen ("namenum.in"原创 2014-02-04 21:56:24 · 580 阅读 · 0 评论 -
usaco 1.4 Packing Rectangles(枚举模拟 含结构体排序)and poj 1169
看到这题完全没有思路,网上看大神们的解析,有说到用深搜,但是不知道这题怎么用深搜,大概是自己没有理解 深搜 的用法。于是选用了令一种思路,枚举。因为题目中只说了六种情况,所以将他们全表示出来,加上四个矩形的位置及长宽变化,一一枚举。最后对答案进行排序,即可。以下截图来自百度文库:http://wenku.baidu.com/view/3cae8f14866fb84ae45c原创 2014-02-26 17:07:28 · 852 阅读 · 0 评论 -
hdu 2005 第几天?(处理闰年)(备战LQB)
迎战蓝桥呗 照着教程刷几道水题,以便到时候复习。题意是,给你一个日期,求这是今年的第几天。代码:#include #include #define lev(n) ((n % 4 == 0 && n % 100 != 0)|| n % 400 == 0)//!!绝妙配合 闰年:N能被4整除and不能被100整除,或N能被400整除int main(void){ int原创 2014-03-08 20:17:00 · 602 阅读 · 0 评论 -
hdu 2012 素数判定(打表)(备战LQB)
按教程继续备战LQB。题意是让你判断表达式n^2+n+41,当n在(x,y)范围内取整数值时(包括x,y)(-39打表法的素数判断。直接上教程原文:首先让我们来看看这些都是什么数。#include int main(void){ int i, c; for (c = 1, i = -39; i <51; i++) { printf("%-5d",原创 2014-03-09 11:29:58 · 668 阅读 · 0 评论 -
syhbz 2038 小z的袜子(莫队算法)
题意:Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命……具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右,他却很在意袜子的颜色,毕竟穿两只不同色的袜子会很尴尬。原创 2015-11-14 10:50:17 · 414 阅读 · 0 评论