NYOJ
文章平均质量分 71
A_Eagle
人生苦短,及时行乐
展开
-
NYOJ 54 最少步数
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=58广搜问题,每个步骤的含义都写在代码里面了。欢迎大家相互交流,代码:#include#include#include#includeusing namespace std;int a[9][9]=//**迷宫地图**//{ 1,1,1,1,1,1,1,1,1,原创 2012-01-06 10:34:21 · 2445 阅读 · 1 评论 -
NYOJ 248 BUYING FEED
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=248题目比较长,还是英文的,貌似一上去就被这阵势杀到了,后来发现其实题目还是很好理解的。。。。。。。大意:John 需要买饲料,有一条X轴,在X轴的某些点上面有店出售饲料。题目给出了有饲料的商店的编号跟每磅饲料需要付出的价钱。各个商店的饲料价钱可能不想同,还要最多能出售的饲料的数目原创 2012-02-16 12:34:55 · 1390 阅读 · 0 评论 -
NYOJ 92 图像有用区域
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=92广搜问题。。。从上午一直弄到下午,最后发现自己画蛇添足,泪流满面。。。。。题目很简单,但深搜RumtimeError.跟迷宫那题差不多,只是不需要处理递归的边界(这就是悲剧所在,浪费了一个上午。。。。),还有个坑就在题目上面的输入,是先宽后高,跟一般的思维方式有点不一样。切到200道原创 2012-02-23 16:33:19 · 1812 阅读 · 1 评论 -
0/1背包问题
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=289因为这题太经典,所以把书上原话粘上来题目 有N件物品和一个容量为V的背包。第i件物品的重量是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。基本思路 这是最基础的背包问题,特点是:每种物品仅有一件原创 2011-12-17 16:03:09 · 838 阅读 · 0 评论 -
NYOJ 49 开心的小明
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=49其实还是简单的0,1背包,趁热打铁,只当作练手了,没啥好说的了,不过以前开数组开小了一次,这次还是开小了,o(︶︿︶)o 唉,不长记性。。。。。水过。代码:#include#includestruct bb{ int prize;//**价格**// int imp原创 2012-02-15 09:35:01 · 2651 阅读 · 0 评论 -
NYOJ 325 zb的生日+NYOJ 456 邮票分你一半
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=325http://acm.nyist.net/JudgeOnline/problem.php?pid=456都可以用0,1背包问题来做,不过 zb的生日貌似用搜索更快(没试过。。。。。。),邮票分你一半貌似用搜索就会超时(也没试过)。因为看起来用0,1背包更简单,所以就用0原创 2012-02-15 09:26:57 · 2863 阅读 · 0 评论 -
NYOJ 37 回文字符串
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=37思想:在纸上测试几组数据,发现先逆转原来的字符串,再用原来的字符串跟逆转后的字符串进行比较,求得的最长公共子序列就是回文串,也就是不需要添加的,再用总长度减去最长公共子序列就可以得到最少需要添加的字符数。代码就简单了,以前写过的稍稍改下就直接贴上来了。代码:#include原创 2012-02-14 19:30:20 · 1709 阅读 · 0 评论 -
NYOJ 16 矩形嵌套
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=16简单的动态规划题,直接水过。。。。。#include#include#includeusing namespace std;struct qt{ int len;//**长**// int wid;//**宽**//}w[1001];bool comp(qt x原创 2012-02-13 20:59:56 · 1291 阅读 · 0 评论 -
NYOJ 10 skiing
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=10还是搜索题,加上了DP的思想,看过书上面说搜索不剪枝就会超时,貌似这题。。。。。。,没减也能过,测试数据 的问题。属于简单的搜索题。。。。。代码:#include#includeint a[101][101],visit[101][101];int dx[4]={0,0原创 2012-02-13 20:38:38 · 1369 阅读 · 0 评论 -
HDU 2084 数塔+NYOJ 18 The Triangle
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2084http://acm.nyist.net/JudgeOnline/problem.php?pid=18这是最简单的动态规划题了,思路就是从后往前找,so easy。。。。。。,直接水过代码:#include#includeint a[101][101];int mai原创 2012-02-07 07:14:20 · 1266 阅读 · 0 评论 -
NYOJ 348 Magic
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=348题意:给你n张牌,让你变一个魔术:第1次把上面的1张牌放到底部,然后最上面的牌就是1,然后拿走1。第2次把上面的2张牌依次放到底部,然后最上面的牌就是2,然后拿走2....重复这个过程,直到所有的牌都被拿走。问一开始的牌应该从上到下怎么放,才能完成这个魔术。(题目意思其实我都看不懂原创 2012-02-12 22:13:28 · 993 阅读 · 1 评论 -
NYOJ 27 水池数目
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=27这应该属于最简单的搜索题了,直接水过。。。。。。代码:#include#include int s,t,a[101][101];int dx[4]={0,0,1,-1};//**四个方向搜索**//int dy[4]={1,-1,0,0};void bfs(in原创 2012-02-12 21:55:09 · 1927 阅读 · 2 评论 -
NYOJ 12 喷水装置(二)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=12这题是算法艺术与信息学竞赛的经典题目,其实是跟以前写过的Radar是差不多的,都属于贪心思想。Radar还需要一点数学思想,这题就直接给出了点的坐标,貌似看起来要简单,可是在这题花的时间比Radar要长,小细节花了很多时间(太大意了)。主要思路就是在既能够保证两点有公共区域的情况下又原创 2012-02-18 09:36:58 · 3192 阅读 · 1 评论 -
NYOJ 35 表达式求值
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=35又是赤裸裸的栈的问题,弄了三天,最终还是卡在浮点数的读取。最后还是看别人博客上面才想到去标记浮点数。。。。又是浪费一天。。。。不过这题还是很经典的,数据结构上的就是拿这题当作例题讲解的,就直接贴上代码了。代码:#include#include#include#inc原创 2012-02-25 16:39:26 · 1160 阅读 · 0 评论 -
NYOJ 14 会场安排问题
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=14其实就是贪心算法,感觉写的跟昨天的动物统计差不多,错觉?直接水过。表示代码中p=i错了,应该是p=i;当时写的时候不小心,已修改。。。。。代码:#include#includeusing namespace std;struct hc{ int first;原创 2011-12-23 20:43:29 · 868 阅读 · 0 评论 -
NYOJ 420 p次方求和
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=420第二次用二分法了。开始总是runtimeerror,没开数组啊。。。。。。看了下讨论区,q=0(这也行,上次还强调看题。。。。。。)补充个:剩余定理 :(a*b)%c=((a%c)*(b%c))%c;不过好像在这里没用到。贴代码:#includeint pow原创 2011-12-17 21:33:34 · 1183 阅读 · 0 评论 -
NYOJ 38 布线问题
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=38最小生成树的最基础问题,不过对于比较笨的我来说却花了一个下午想再加上一个晚上敲代码。按照最小生成树的直接来求(随机选一个点,然后找这个点连接到其他点的那条边的最小值(权值),找到后再标记这个点,再从起始点和找到的那个点一起出发,继续找这些点连接到其他点的那条边的最小值,继续标记点。。原创 2012-02-23 08:07:42 · 1519 阅读 · 2 评论 -
NYOJ 540 奇怪的排序(字符串)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=540很简单的字符串处理题,因为不懂itoa是非标准C语言库函数,CompileError了一次。后来改成sprintf,就过了。水题,直接上代码。#include#include#include#include#includeusing namespace std原创 2012-05-17 10:30:00 · 1314 阅读 · 0 评论 -
NYOJ 55 懒省事的小明(优先队列)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=55这里有先优先队列的简单介绍:http://blog.csdn.net/a_eagle/article/details/7371974http://blog.csdn.net/a_eagle/article/details/7400143没事切切水题,思路:只要原创 2012-05-09 12:49:46 · 2598 阅读 · 1 评论 -
NYOJ 290 动物统计加强版(字典树)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=290经典的字典树的问题,代码几乎可以来当模版来用了,就留下来了~~~,不过貌似用运算符重载排序(不知道是不是)也能过。。。。。。。。需要注意的是开辟一个新的内存时下一个指针一定要指向NULL;字典树代码:#include#include#includeint max;原创 2012-03-21 09:10:28 · 1997 阅读 · 0 评论 -
C++ *max_element函数找最大元素 *min_element函数找最小元素 STL算法
#include#includeusing namespace std;int main(){ int n[]={1,4,22,3,8,5}; int len=sizeof(n)/sizeof(int); cout<<*max_element(n,n+len)<<endl; cout<<*min_element(n,n+len)<<endl; return 0;}C++ S原创 2012-03-20 14:16:13 · 38297 阅读 · 0 评论 -
NYOJ 322 Sort(归并排序求逆序数)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=322如果按冒泡排序这些O(n^2)肯定会超时,所以需要找一种更快的方法 --------归并排序。归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序原创 2012-03-14 13:46:56 · 1737 阅读 · 0 评论 -
HDU 1075 What Are You Talking About(字典树)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1075还是赤裸裸的字典树问题。还是几乎套模版来做。。。。。。除了复制标记以外的跟上一篇博客统计难题没什么区别。不过一个小细节还是坑了一个小时。。。。。直接上代码。。。。。#include#include#includestruct node { bool flag;/*标记是原创 2012-03-27 11:24:04 · 1999 阅读 · 1 评论 -
NYOJ 17 单调递增最长子序列(O(n2))+HDU 1025 Constructing Roads In JGShining +NYOJ 214 单调递增子序列(二)(O(nlogn))(整理)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=17这题其实是跟导弹拦截一样的,因为还有个加强版,所以把这个跟加强版一起贴上来。经典动态规划题,以后的动态规划很多都是从这个衍生出来的,所以就找了段自己认为比较详细的解释来了,保存下来,备用,语言组织能力太差。。。。。。一, 最长递增子序列问题的描述原创 2012-02-08 07:21:38 · 3866 阅读 · 9 评论 -
NYOJ 257 郁闷的C小加(一)(中缀式变后缀式)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=257经典的数据结构题,用栈跟队列模拟。中缀式变后缀式:stack optr;用来存放运算符栈。队列queue opnd用来存放后缀表达式。从左到右扫描中缀表达式,是操作数就放进队列 opnd的末尾。如果是运算符的话,分为下面3种情况:(1)如果是‘(’直接压入opt原创 2012-03-05 07:46:03 · 1428 阅读 · 0 评论 -
NYOJ 42 一笔画问题
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=42快有一个礼拜没写过博客了,数据结构里面的算法太多,经典题目就那么点,做一道少一道,因为自己学,所以花了很多时间来理解。。。。。。不扯了。。。。。。思路:简单的欧拉回路,判断是否能够一笔画就在于各个点是否连通,判断是否连通可以用并查集来做。而且节点为奇点个数为0或者为2才能一笔画。原创 2012-03-02 16:32:22 · 5040 阅读 · 0 评论 -
NYOJ 240 小明的调查统计(二)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=240这题做了三个多小时才AC,o(︶︿︶)o 唉,速度太慢。题目难度居然说是1,坑爹的。最近bool型用的很频繁了。其实题目还是排序。代码:#include#includeusing namespace std;struct tj{ int cj;//**成绩原创 2011-12-24 15:18:59 · 1253 阅读 · 0 评论 -
NYOJ 453 小珂的烦恼
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=453今天看到一段比较好的代码,觉得以后还会有用,所以就留了下来.代码:#includeint a[270000],b[100002];void pre(){ int i,j; for(i=j=1;i<=100000;j++) { if(a[j]==0)原创 2012-01-05 17:15:33 · 843 阅读 · 0 评论 -
NYOJ 2 括号配对问题
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=2第一次用栈来写的代码,早上队长讲了一下,了解了下基础,觉得C++的栈可以直接调用,C的栈却要自己定义,还是该花时间好好看C++.这是用C写的:代码:#includestruct stack { char str[10005]; int top;};void原创 2012-01-03 08:59:08 · 1608 阅读 · 1 评论 -
HDU 1022 Train Problem I
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022题目虽然是英文的,但很好理解,。其实就是赤裸裸的栈的题。代码:#include#include#include#includeusing namespace std;int main(){ stacks; char a[1001],b[1001]; int n,i原创 2012-01-04 14:51:51 · 1450 阅读 · 1 评论 -
HDU 3959 Board Game Dice
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3959题目大意就是找一个比N大的(或者等于)M^X,输出M^X*X/N.并化成最简分数。这题注意的是个比较大的数字(N^X),要用long long来存,这里坑了好多次,其他的就没有什么了。代码:#includelong long gcd(long long a,long lo原创 2011-12-27 12:03:50 · 870 阅读 · 0 评论 -
NYOJ 249 最大长方形
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=249题目早就想到跟积木是一个性质的,但一直没能AC,原来一直以为w[1001]={0};跟memset(w,0,sizeof(w));是一个性质,现在看来,唉,基础还是不扎实。总用w[1001]={0};输出结果就一直不对。//**错误代码**//#includein原创 2011-12-16 16:15:41 · 806 阅读 · 0 评论 -
NYOJ 114 某种序列
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=114题目中文,不需要翻译了。题目简单来说就是三个大数相加,再迭代。第一次提交wa,看了N久看不出问题,《每行数据包含3个整数A0, A1, A2 (0 代码如下:#include#include#define n 99int main(){ char a[100]原创 2011-12-12 21:49:46 · 768 阅读 · 0 评论 -
NYOJ 86 找球号(一)
这是第一次用的二分,既然前面写了第二次的,觉得有必要写下。题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=86注意看题,整数编号i(0#include static int a[100000001];//**这里数组开的太大,但按题目要求有不能变小**//int main(){ int s,n,t; scan原创 2011-12-17 21:59:11 · 1054 阅读 · 0 评论 -
NYOJ 8 一种排序
bool型果然好用开始做题目意思都没读懂,果然读题要小心题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=8代码: #include#includeusing namespace std;struct px{ int b; int c; int k;}w[1001];bool comp(px x,px原创 2011-12-09 12:54:10 · 765 阅读 · 0 评论 -
NYOJ 341 No Gambling
这题完全是冲这题的代码最短才去做。题目链接 http://acm.nyist.net/JudgeOnline/problem.php?pid=341题目大意:就是把点用一条线连接在一起,能首先连接的就输出“I bet on Oregon Maple~”,对方要阻碍你连接成一条线。(点视为无数个)。自己琢磨下就知道的堵不住的。因此只要首先下的就一定赢。代码:#includeint原创 2011-12-12 13:57:37 · 653 阅读 · 0 评论 -
NYOJ 157 487-3279
题目链接 http://acm.nyist.net/JudgeOnline/problem.php?pid=157纠结了一天,原来是数组定义的太大了,需要定义在主函数外部,╮(╯▽╰)╭,居然忘了,难怪总是输入都输入不了。。。。。。还有内存开的太大(谁叫我看做为数字(唉)),这里摔了好多次,因为题目只有七位数,所以可以看做为一个数字,接下来就简单了。代码如下 #includ原创 2011-12-10 20:56:36 · 743 阅读 · 0 评论 -
NYOJ 172 小珂的图表
二维数组,wa了好久,水题。题目链接 http://acm.nyist.net/JudgeOnline/problem.php?pid=172直接贴代码#includeint main(){ char str[5]; int a[101][101]; int s,i,j,l,x,y,x1,y1; for(i=1;i<=100;i++) { for(j=1;j<=100原创 2011-12-08 12:17:30 · 489 阅读 · 0 评论 -
NYOJ 265 积木
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=265核心思想求等效宽度,积木到左右两边比自己高,中间的距离即为等效宽度。 #includestruct jm{ int w; int h;}w[21];int main(){ int s,n,i,j,b,min; int a[21]; scanf("%d",&原创 2011-12-06 13:35:07 · 859 阅读 · 0 评论 -
NYOJ 287 Radar
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=287这题从昨天晚上开始做,今天才做出来,果然还是不熟练啊。题目大意:其实有个图加上测试数据就很好理解了,x轴为海岸,x轴以上为海,海上有岛屿,在海岸上安置雷达,给出各个岛屿的坐标和雷达覆盖的半径。如果能全部覆盖则输出需要最少雷达数量,如果不能完全覆盖则输出-1。思路:其实还是贪原创 2012-01-22 09:11:49 · 1608 阅读 · 0 评论