NYOJ
文章平均质量分 66
OosuifengoO
这个作者很懒,什么都没留下…
展开
-
NYOJ---240题小明的调查统计(二)
这个问题其实很长时间之前就可以解决了,但是不想做。以前各种WA,在心里留下了阴影。我就打算等到自己的实力提升到一定境界之后轻而易举的解决它,那样就可以建立强大的自信。嘿嘿······这个题跟杭电的那道海选女主角很相似。但是不同的是这道题需要多加一层判断。对成绩进行排名,需要考虑到并列名次。解题思路:定义结构体,用结构体储存班级,学号,成绩,名次。然后用sort排序。不过需要在最开始的地方写原创 2012-01-05 17:36:41 · 1019 阅读 · 0 评论 -
HDUOJ&&NYOJ----The 3n + 1 problem
这个题最初是在HDUOJ上看到的,没费什么劲,直接水过。POJ也没费劲。后来发现学校OJ上也有这么一道题,就直接把昨晚写完的代码交上去。非常诡异的TLE了。唉,各种优化,各种纠结,C写完用C++写。结局还是TLE。后来想起来这个题要打表。可以省些时间。果然不出所料,嘿嘿,不过这期间也被坑了两次。一次运行出错,发现自己数组开的太小了,改成了题目中说的1000000.。兴冲冲的提交,刷新—>悲剧的TL原创 2012-01-07 09:57:24 · 1098 阅读 · 0 评论 -
NYOJ---272题Adding Reversed Numbers
水题一道·····纯粹拿来练手的。昨天经过接近28个小时的颠簸终于人模狗样的到家了。晚上美美的睡了一觉。早上习惯性的又醒了(6点多啊,多悲剧····)今天就忙着扯网线,弄无线路由。下午开始过以前那种吃饭靠喊,睡觉没人管的日子了。下午开始调整状态,刷出来了一道水题。很是坑人的一道题。竟然用到大数加法,最后还有陷阱·····具体的看注释吧,我就不写思路了。原题地址:点击打开链接。代码如下:原创 2012-01-10 16:55:43 · 716 阅读 · 0 评论 -
NYOJ---28题大数阶乘
这个题纠结了很久。后来发现需要技巧,一种思想。其实它需要你专心的用程序来模拟出计算过程来。做出这个题来之后你会发现很多的题目都迎刃而解了·····原题地址:点击打开链接。代码如下:#includeint a[17000]={0};int main(){ int i,j,k,l,n,m; scanf("%d",&n); a[0]=1; for(i=2;i<=n;i++原创 2011-12-21 11:30:28 · 529 阅读 · 0 评论 -
NYOJ——410题How many ones?
这个题是很有技巧的一个题,与求余数和对10003取余都有相通之处·····思路就是假设有n个1,我们要做的就是从左边开始进行计算,对输入的数进行取余,剩下的数乘以10,再加上新添加上的1.思路其实很简单,不过当初做这道题的时候想错了,竟然想从右边开始,结果可想而知····悲剧的WA啊·····原题地址:点击打开链接。代码如下: #includeint main(){ in原创 2011-12-20 20:32:28 · 497 阅读 · 0 评论 -
NYOJ--第44题子串和
这道题也是动态规划的问题,开始的时候受导弹拦截的干扰,以为也要从数据的最后面开始处理呢,结果自己觉得思路不对,感觉别扭,后来写出来之后果然是错误的。然后从最开始进行处理,WA了三次,发现很多小的细节没有做好。最后一次提交,AC。解题思路就是从前往后处理数据,判断前面的数据是否大于0,不断的累加,最后输出最大的和。一些小的细节和思想都可以在代码和注释中有所体现。原题地址:点击打开链接。代原创 2012-02-05 23:02:39 · 689 阅读 · 0 评论 -
NYOJ--第79题拦截导弹
最近在看动态规划问题,发现还是很难拿出一整天的时间来学习,还有那么多的同学没有见面,那么多的事情没有处理。还有4天就要回学校了,争取在回去之前把这边的事情处理完,这几天把动态规划好好看看,争取弄完,也不至于拖累队友。这个题目算是动态规划中比较简单的了,也是很基础的了,现在整理出来,不仅仅给那些同学看,也算是加深下自己的对问题的理解吧。具体的解题思路我写在代码当中了,各位看官请仔细观察,多多思考。原创 2012-02-05 09:55:45 · 685 阅读 · 0 评论 -
NYOJ--2题括号配对
纠结了一上午,终于在最后做对了。这是第一次完全靠自己用栈写出来的代码,特别有成就感。感觉写的很简洁,完全可以做模版。嘿嘿。虽然说我对栈应用不熟练,但是最起码我会用了,哈哈。感觉纠结这一上午还是很有意义的,不断的寻找错误,不断的修改,对栈的认识也越来越熟练。这个题其实不需要用栈来做,可以用数组来做。但是既然在学栈,就要学以致用,练习一下。解题思路:对于输入的括号进行判断,如果是“[” 或者是原创 2012-01-03 11:19:19 · 621 阅读 · 0 评论 -
NYOJ--第27题 水池数目
这个题我提供两种方法,一种深度搜索,一种广度搜索。这个题是学校OJ上比较简单的搜索题,昨天晚上学长给简单的讲了讲搜索,所以今天就拿这个来练手了,因为跟队友分好,我弄搜索,他弄背包。我需要在搜索上多下点工夫,所以今天一整天都在弄这个问题,其实很是简单,现在想明白之后就会发现很没难度。因为有管理权限,所以我可以看到很多人的代码。但是发现很少有人用广搜。我用深搜做完之后觉得用广搜在理论上也可以实现,所以原创 2012-02-20 20:55:06 · 1035 阅读 · 0 评论 -
POJ&&NYOJ--1328题Radar Installation
这个题用到了贪心算法,不过比较有技巧。嘿嘿,用了2个小时做出这个题。很有成就感。题目大意: 海上有很多的小岛,我们需要在陆地上修建雷达,使得雷达能够完全覆盖过这些小岛来。提供雷达的半径和小岛的坐标,你的任务就是用最少的雷达把这些小岛覆盖过来。解题思路:我们需要把这些小岛的坐标进行排序,这样方便进行数据处理。所以对小岛的横坐标进行排序,然后按照顺序一次进行判断。因为能够把一个小岛覆盖过来的原创 2012-02-24 11:04:05 · 650 阅读 · 0 评论 -
NYOJ--第456题邮票分你一半
一道动态规划的问题,01背包问题。最近一直在纠结01背包,这个题算是自己的一个进展吧。先把代码贴出来,大家看看吧。不知道你们能不能看出这几串代码的不同。具体思路和下面代码的解释过段时间再写。今天弄这问题弄的头晕,贴完就洗洗睡了。原题地址:点击打开链接。代码如下:#include#includeint main(){ int i,j,k,l,n,m,a[100005],b[100原创 2012-02-16 22:26:19 · 781 阅读 · 0 评论 -
NYOJ--第214题单调递增数列(二)
这个题如果单纯的按照以前的方法来解决的话肯定会超时,所以需要我们对代码进行优化。优化用到了二分法,把以前那种(n^2)变成了(nlogn)其实我也是第一次接触二分法,之前对二分法并不是特别熟悉,所以就去百度了一下基本的概念。我觉得二分法可以单独整理一下。呵呵,废话不多说了,下面是代码和证明(证明是看的别人的,我也不是很明白,不过再思考一下应该可以明白)原题地址:点击打开链接。代码如下:#i原创 2012-02-19 11:38:53 · 1099 阅读 · 0 评论 -
NYOJ--58题最少步数
这个题AC了很久,本来不想贴这串代码的,但是最近要学习搜索。这个题算是搜索中很简单的存在了,当初学长也是把这个题当作例题给我们讲解的。现在觉得把它贴出来吧,能够让其他人参考一下思路,可能有很大的收获。这个星期一直在弄动态规划,不想在弄01背包了。这两天还是弄搜索吧,在加深一下认识。也跟得上进度,虽然我是最弱的一个。解题思路:根据题目中给定的坐标,你需要做的就是判断由起始点走到终点的最小步数。基原创 2012-02-19 16:56:50 · 2101 阅读 · 2 评论 -
NYOJ---38题布线问题
这个题是最小生成树题目,开始用的是prim算法,后来又用Kruskal把题目解决了。最近在接触这东西,虽然学的很慢,但是还是可以感觉的到自己的进步。这个题其实可以用两种方法来解决,现在我把这两种方法贴出来。跟你们共享一下。具体的解题思路就不写了。随便翻翻数据结构都能找到。第一种prim算法比较简单,很容易理解,可能第二种kruskal算法中的排序有点难度。一会我会把用到的间接排序单独整理一下。原创 2012-02-28 14:34:34 · 687 阅读 · 0 评论 -
NYOJ--16题 矩形嵌套
有段时间没有更新博客了,最近一个星期一直在忙那扯淡的党课,听他们说一些假而空的东西,感觉很是浪费时间。不过值得庆幸的是有好几个老头其实挺可爱的,说的那些事情也很有教育意义,也不枉我浪费那么多时间。党课和入党都是人生必须要经历的一段旅程······不扯了,上午用了不到20分钟水了一道题,现在把代码贴出来。解体思路:其实这道题用到了一点动态规划的思想。对矩形进行排序,然后根据题目要求找出嵌套最多的原创 2012-03-12 10:14:32 · 1376 阅读 · 0 评论 -
NYOJ---开灯问题
这个题当初想了很久,一直wa,后来吃饭的时候忽然灵机一现想出来一个方法,很有成就感。不必考虑去重排序这些问题了,简单、明了。嘿嘿 题目地址点击打开链接; #include#include#define MAXN 1000 + 10int a[MAXN];int main() { int i, j, n, k; memset(a, 0, sizeof(a)); sc原创 2011-12-21 14:15:12 · 861 阅读 · 0 评论 -
NYOJ--189兔子的烦恼
这个题很简单,不过在做这道题的时候用到了一个思想,感觉很有用。记录下来。原题地址:点击打开链接。代码如下;#include#includeint a[1001];int main(){ int i,j,k,flot,n,m,g; while(scanf("%d%d",&m,&n)!=EOF) { memset(a,0,sizeof(a)); if(m==1) f原创 2011-12-21 14:16:43 · 596 阅读 · 0 评论 -
NYOJ--63题小猴子的下落
今天在看二叉树,忽然发现有个题是跟二叉树扯点边,就顺手把它做了。回过头来看这个问题,会发现其实这个题真的很简单。当初之所以没有做而是放到了现在,就是自己犯了想当然的错误,认为这个题是一个要用到二叉树的题,自己没有看二叉树,肯定做不出来。就把它放到一边了····实践证明,这是一道水题·····一次直接水过。以前想的很麻烦,但是后来发现其实这个题很简单。思路也很清晰。不断的模拟小猴子在各个结点的选择。原创 2012-01-04 21:04:22 · 698 阅读 · 0 评论 -
NYOJ--408题Board Game Dice
这题刚开始看的时候甚是头晕,但是后来看到asas123的思路之后忽然发现这个题其实就是坑人的······就是算出一个x,使得M的x次方大于或者等于n;思路很简单,有for循环就可以得到得到答案,但是需要注意的就是题目中所给的那n,m,其实是有陷阱的,需要用long long 型。开始的时候我用的是int型的,结果最后输出的时候每次都是错误,后来才忽然间想明白了。另外需要自己多留意的就是那个求最原创 2011-12-31 17:46:58 · 601 阅读 · 0 评论 -
NYOJ---32题 组合数
这个题用到的是一个不断调用的函数。本来我打算自己定义一个数组,因为题目中的要求范围不是特别大,就到10。但是后来发现实现的时候特别困难。后来发现这个模版。呃·····不知道是不是自己知道的东西太少了,所以看到这个模版的时候特别震惊············好了不废话了,大家看看这个模版,或许很有收获。原文地址:点击打开链接。代码如下#include #define MAXN 100i原创 2011-12-26 21:47:25 · 885 阅读 · 0 评论 -
NYOJ——114题某种序列
这个题思考了很久,很久,敲代码也敲了很久,错误也同样多多,这个题在asas123的帮助下修改了好几次才终于AC,让我很是无奈。其实这个题也是在用大数加法的那个模版,只不过需要注意的就是刚刚开始输入的时候有可能是一个大数,所以我们定义3个字符数组进行储存,然后在运算的时候把字符数组进行转换。其实这个思路在以往的做题中应用的也很多的······不过最最颠覆我的思维的是那个迭代过程,这个很具有创意。大家原创 2011-12-25 17:24:38 · 703 阅读 · 0 评论 -
NYOJ--第157题487-3279
这个问题很是纠结,做了很久,也WA了很久。后来跟asas123探讨了很久,他过了,我很悲剧的又WA了。后来发现最后输出的地方有错误,让我很是无奈······修改后叫上就过了。很无语。下面是asas123的代码,他写的非常简单·····我这个小菜鸟太菜了····原题地址:POJ1002题点击打开链接NYOJ157题点击打开链接。代码如下:#include #include原创 2011-12-21 10:30:49 · 820 阅读 · 0 评论 -
NYOJ—-106题背包问题
这道题典型的应用贪心算法。不过有些不同的是这个题目已经告诉你单位价值了,所以我们不需要考虑计算单位价值最高的,从高到低的选择了。我们现在所需要做的就是对单位价值进行排序,然后从高到底取物品,直到重量达到题目中告诉的背包的W。想明白之后,思路也就很清晰了。sort排序,结构体或者二维数组进行储存数据。最后执行计算价值和·······不过这个题目中值得留意就是那个对结构体数据的交换,没有单独定义一原创 2011-12-21 09:28:24 · 504 阅读 · 0 评论 -
NYOJ-254编号统计
这个题很是坑人·····最开始有冒泡排序,TLE,改成sort,一如既往的TLE。后来发现自己最开始的时候进行比较的思路是错误的。后经人指点,发现最后进行统计是王道。故更换思路······原题地址:点击打开链接.代码如下:#include#includelong long b[2000001];int main(){ int i,j,n,m; scanf("%d"原创 2011-12-20 19:54:37 · 442 阅读 · 0 评论 -
NYOJ----88汉诺塔
这个题很是坑人·····纯粹的数学问题,那么多坑,害的我WA了N次·····汉诺塔其实很容易理解,我们都知道第n次需要移动2^n-1次。最后6位数也很简单,直接对1000000进行取余就可以。最悲剧的就是当数据特别大的时候肯定会超时·······后来经人提醒,知道要对输入的数据进行处理,才能进行计算。好吧,这个题我承认自己犯傻了。原题地址:点击打开链接。代码如下:#includein原创 2012-01-05 16:14:12 · 3159 阅读 · 1 评论 -
NYOJ--187快速查找素数
被这道水题困了很长时间,因为思路一直是沿用的求素数的方法,所以运行时间会超时。后来想到很多的数据可以进行处理,把那些确定不是素数的数据删除,把素数有一个数组进行储存。具体来说就是要把3的倍数全部去掉,4的倍数全部去掉,依此类推·······原题地址:点击打开链接。代码如下: #include#include #include#include#define N 2000000原创 2012-01-01 19:43:08 · 1878 阅读 · 1 评论 -
NYOJ--452题ShippingCubes
这个题是月赛的题目,但是当时没有理解好题目,思路错了,很没悬念的悲剧了。后来想明白了,题目中要求是把一个拆解成3个数相乘的情况,然后把三个数进行求和,最后输出最小的和。。既然思路清晰了,下面就是最简单的写代码了。原题地址:点击打开链接。代码如下:#includeint main(){ int i,j,k,l,n,m; while(scanf("%d",&n)!=EOF)原创 2011-12-21 11:39:54 · 556 阅读 · 0 评论 -
NYOJ--An problem about date
本来这个问题没有贴出来的必要,因为狠狠简单。但是觉得我们不应该只是在这一味的刷题,学c语言。更多的时候更应该关注一下生活中的那些小细节,小规律。所以特意写了这篇博客。用到的公式:k=(Day +1+ 2*Month + 3*(Month+1)/5 + Year + Year/4 - Year/100 + Year/400) % 7;唯一需要注意的地方就是1月和2月算作上年的13月,和14月。这原创 2011-12-21 10:13:01 · 442 阅读 · 0 评论 -
NYOJ---205题求余数
这个题需要一中新的思想才能够做出来。以前那种for循环的思想到这里就肯定要死翘翘了。好了,废话少说,具体思路就是要先从前5位开始计算,对10003进行取余。然后对剩下的进行循环,取余的结果乘以10再加上下一位的数,再对10003进行取余。剩下的以此类推····其实就是模拟的手算的过程·······原题地址:点击打开链接。代码如下: #include#includeint ma原创 2011-12-20 21:22:50 · 599 阅读 · 0 评论 -
NYOJ---A+B Problem II
这个题的思路就是大数加法,把大数当成一个字符串来就行运算。不过这个代码的亮点就是他不需要顾及两个数的长短问题。所以把它贴出来·········原题地址:点击打开链接代码如下: #include#includeint main(){ int n,m; scanf("%d",&n); m=1; while(m<=n) { cha原创 2011-12-20 20:22:42 · 2924 阅读 · 0 评论 -
NYOJ---414 Problem II
水题·····不过就是提供一种转换的思路,10进制转化16进制,转化8进制,转化12进制,2进制也是同样的道理。题目地址:点击打开链接。代码如下: #includeint main(){ while(1) { int i=0,j=0,k=0,l=0,s,n,m=0; scanf("%d",&n); if(!n)break; s=n; while(s!=原创 2011-12-20 20:11:24 · 539 阅读 · 0 评论 -
NYOJ---150题Train Problem I
这个题就是栈的思想的一个题。本身很简单,不过因为是个英文题目,所以对题目理解不透····唉,所以悲剧的wa了多次。因为没有看清楚最后那个FINISH全都是大写的····毫无悬念的WA了。题目很简单。就是你需要你需要判断一下前面输入的数据能不能按照后面的顺序输出出来。可以直接进栈然后出栈,也可以先存入,后出栈。题目地址:点击打开链接。代码如下:#include#include#i原创 2012-01-04 14:03:38 · 914 阅读 · 0 评论 -
HDU–1016题 Prime Ring Problem
素数环问题,用到了深搜,很有技巧。先是在学校OJ上看到的,后来又去杭电提交了一下。HDU水过,NYOJ超时一次,WA了一次。相对而言,NYOJ上难度大点,要考虑奇偶数。具体思路写在代码中了。我的新的个人网站地址:www.imanor.net。欢迎各位光临。原题地址:HDU:点击打开链接NYOJ:点击打开链接HDU代码#include#include#includeus原创 2012-03-21 20:10:50 · 1135 阅读 · 0 评论