NYOJ
文章平均质量分 78
C++算法练习
林下溪源
为学日益,为道日损
展开
-
acm-田忌赛马
田忌赛马时间限制:3000 ms | 内存限制:65535 KB难度:3描述Here is a famous story in Chinese history."That was about 2300 years ago. General Tian Ji was a high officialin the country Qi. He likes to play ho原创 2013-11-12 16:45:11 · 1048 阅读 · 0 评论 -
STL-单向链表类模板
#includeusing namespace std;templateclass ListNode{ private: TYPE data; ListNode *next; static ListNode *CurNode; static ListNode *head; public: ListNode() { next=NULL; head=C原创 2013-11-12 16:44:22 · 685 阅读 · 0 评论 -
STL-栈类模板
#includeusing namespace std;templateclass Stack{ private: int size; int top; T* space; public: Stack(int=10); ~Stack() { delete []space; } bool push(const T&); T pop();原创 2013-11-12 16:44:20 · 573 阅读 · 0 评论 -
acm-A/B Problem
A/B Problem时间限制:1000 ms | 内存限制:65535 KB难度:3描述 做了A+B Problem,A/BProblem不是什么问题了吧!Problem" TITLE="acm-A/B Problem" />输入每组测试样例一行,首先一个号码A,中间一个或多个空格,然后一个符号( / 或者 %),然后又是空格,后面又是一个号码B,原创 2013-11-12 16:44:18 · 707 阅读 · 0 评论 -
acm-光棍的yy
光棍的yy时间限制:1000 ms | 内存限制:65535 KB难度:2描述yy经常遇见一个奇怪的事情,每当他看时间的时候总会看见11:11,这个很纠结啊。现在给你m个1,你可以把2个1组合成一个2,这样就不是光棍了,问这样的组合有多少种??例如(111 可以拆分为 111 12 21 有三种)输入第一行输入一个n表示有n个测试数据以下n行原创 2013-11-12 16:44:16 · 615 阅读 · 0 评论 -
acm-A+B Problem IV
A+B Problem IV时间限制:1000 ms | 内存限制:65535 KB难度:3描述acmj最近发现在使用计算器计算高精度的大数加法时很不方便,于是他想着能不能写个程序把这个问题给解决了。输入包含多组测试数据每组数据包含两个正数A,B(可能为小数且位数不大于400)输出每组输出数据占一行,输出A+B的结果,结果需要是最简的形式。样例输原创 2013-11-12 16:44:14 · 692 阅读 · 0 评论 -
acm-A-B Problem
A-B Problem时间限制:1000 ms | 内存限制:65535 KB难度:3描述A+B问题早已经被大家所熟知了,是不是很无聊呢?现在大家来做一下A-B吧。现在有两个实数A和B,聪明的你,能不能判断出A-B的值是否等于0呢?输入有多组测试数据。每组数据包括两行,分别代表A和B。它们的位数小于100,且每个数字前中可能包含+,- 号。每个数字原创 2013-11-12 16:44:12 · 647 阅读 · 0 评论 -
acm-最小公倍数
最小公倍数时间限制:1000 ms | 内存限制:65535 KB难度:3描述为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致。但也并非纯粹的偶然:60是个优秀的数字,它的因子比较多。事实上,它是1至6的每个数字的倍数。即1,2,3,4,5,6都是可以除尽60。我们希望寻找到能除尽1至n的的每个数字的最小整数m.输入多组测试数据(少于原创 2013-11-12 16:44:09 · 931 阅读 · 0 评论 -
acm-棋盘覆盖
棋盘覆盖时间限制:3000 ms | 内存限制:65535 KB难度:3描述在一个2k×2k(1k×2k未被覆盖过的方格,求需要类似图2方格总的个数s。如k=1时,s=1;k=2时,s=5原创 2013-11-12 16:44:07 · 785 阅读 · 0 评论 -
acm-A+B Problem II
A+B Problem II时间限制:3000 ms | 内存限制:65535 KB难度:3描述I have a very simple problem for you. Given two integers A and B,your job is to calculate the Sum of A + B.A,B must be positive.输入原创 2013-11-12 16:44:05 · 617 阅读 · 0 评论 -
acm-纪念邮票
纪念邮票时间限制:1000 ms | 内存限制:65535 KB难度:1描述 邮局最近推出了一套纪念邮票,这套邮票共有 N 张,邮票面值各不相同,按编号顺序为1分,2分,···,N分。 小杭是个集邮爱好者,他很喜欢这套邮票,可惜现在他身上只有M 分,并不够把全套都买下。他希望尽量买,最好刚好花光所有钱。作为一个集邮爱好者,小杭也不想买原创 2013-11-27 21:21:33 · 1144 阅读 · 0 评论 -
acm-Abbreviation
Abbreviation时间限制:1000 ms | 内存限制:65535 KB难度:1描述As we know, we often use a short sequence of characters in place of some words with a very long name. For example, ACM is an abbrevi原创 2013-11-27 19:16:44 · 1392 阅读 · 0 评论 -
acm-Train Problem I
Train Problem I时间限制:3000 ms | 内存限制:65535 KB难度:2描述As the new term comes, the Ignatius Train Station is very busy nowadays. A lot of student want to get back to school by train(because原创 2013-11-23 14:40:00 · 568 阅读 · 0 评论 -
acm-好多的树
好多的树时间限制:3000 ms | 内存限制:65535 KB难度:5描述在那遥远的地方有一片神奇的森林,它的神奇之处是:森林中的每棵树都长在一对整数确定的坐标上。有一个小红人站在(0,0)的位置上,放眼望去,看到很多的树,眼前的树是那么的多,以至于它一直数不清。那么就来写个程序帮它数数吧! 输入第一行一个整数n,代表测试数据组数。接下来有n(n原创 2013-11-12 16:44:55 · 785 阅读 · 0 评论 -
acm-GoroSort
GoroSort时间限制:3000 ms | 内存限制:65535 KB难度:4描述Goro has 4 arms. Goro is very strong. You don't mess with Goro.Goro needs to sort an arrayof N different integers.Algorithms are not Goro's s原创 2013-11-12 16:44:42 · 575 阅读 · 0 评论 -
acm-D的小L
D的小L时间限制:4000 ms | 内存限制:65535 KB难度:2描述 一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给匡匡出了个题目想难倒匡匡(小L很D吧),有一个数n(0,,,聪明的你能帮匡匡解围吗?输入第一行输入一个数N(0输出按特定顺序输出所有组合。特定顺序:每一个组合中的值从小原创 2013-11-12 16:44:24 · 544 阅读 · 0 评论 -
acm-Binary String Matching
Binary String Matching时间限制:3000 ms | 内存限制:65535 KB难度:3描述Given two strings A and B, whose alphabet consist only ‘0’ and ‘1’.Your task is only to tell how many times does A appear as asubs原创 2013-11-12 16:44:26 · 575 阅读 · 0 评论 -
acm-推桌子
推桌子时间限制:1000 ms | 内存限制:65535 KB难度:3描述The famous ACM (Advanced Computer Maker) Company has rented a floorof a building whose shape is in the followingfigure. The floor has 200 rooms原创 2013-11-12 16:45:09 · 700 阅读 · 0 评论 -
acm-Color the fence
Color the fence时间限制:1000 ms | 内存限制:65535 KB难度:2描述Tom has fallen in love with Mary. Now Tom wants to show his love and write a number on the fence opposite to Mary’s house. Tom thinks t原创 2013-11-12 16:45:07 · 661 阅读 · 0 评论 -
acm-寻找最大数
寻找最大数时间限制:1000 ms | 内存限制:65535 KB难度:2描述请在整数 n 中删除m个数字, 使得余下的数字按原次序组成的新数最大,比如当n=92081346718538,m=10时,则新的最大数是9888 输入第一行输入一个正整数T,表示有T组测试数据每组测试数据占一行,每行有两个数n,m(n可能是一个很大的整数,但其位数不超过原创 2013-11-12 16:45:05 · 719 阅读 · 0 评论 -
acm-圈水池
圈水池时间限制:3000 ms | 内存限制:65535 KB难度:4描述有一个牧场,牧场上有很多个供水装置,现在牧场的主人想要用篱笆把这些供水装置圈起来,以防止不是自己的牲畜来喝水,各个水池都标有各自的坐标,现在要你写一个程序利用最短的篱笆将这些供水装置圈起来!(篱笆足够多,并且长度可变)输入第一行输入的是N,代表用N组测试数据(1第二行输入的是m,代表本原创 2013-11-12 16:45:02 · 768 阅读 · 0 评论 -
acm-三点顺序
三点顺序时间限制:1000 ms | 内存限制:65535 KB难度:3描述现在给你不共线的三个点A,B,C的坐标,它们一定能组成一个三角形,现在让你判断A,B,C是顺时针给出的还是逆时针给出的?如:图1:顺时针给出图2:逆时针给出 输入每行是一组测试数据,有6个整数x1,y原创 2013-11-12 16:45:00 · 620 阅读 · 0 评论 -
acm-多边形重心问题
多边形重心问题时间限制:3000 ms | 内存限制:65535 KB难度:5描述在某个多边形上,取n个点,这n个点顺序给出,按照给出顺序将相邻的点用直线连接,(第一个和最后一个连接),所有线段不和其他线段相交,但是可以重合,可得到一个多边形或一条线段或一个多边形和一个线段的连接后的图形; 如果是一条线段,我们定义面积为0,重心坐标为(0,0).现在求给出的点集组成的原创 2013-11-12 16:44:58 · 679 阅读 · 0 评论 -
acm-K steps
K steps时间限制:2000 ms | 内存限制:65535 KB难度:4描述Here are n beautiful towns and m roads(directional edge). yjxwants to visit these towns for relaxation when hesuddenly got a question. He wants原创 2013-11-12 16:44:53 · 610 阅读 · 0 评论 -
acm-星际旅行
星际旅行时间限制:20000 ms | 内存限制:65535 KB难度:5描述在半人马星系,有M*N个星球,它们排成了M行N列,每个星球与其上下左右的星球都有一条星际航道相连,每个星球从属于一个国家,同一个国家中的所有星球都可以通过使用星际之门相连在一起。现在小渡想从坐标为(1,1)的星球(左上角)航行到坐标为(M,N)的星球,为了体验星际旅行的美妙感觉,他想使自己通原创 2013-11-12 16:44:51 · 838 阅读 · 0 评论 -
acm-Kiki & Little Kiki 2
Kiki & Little Kiki 2时间限制:5000 ms | 内存限制:65535 KB难度:4描述There are n lights in a circle numbered from 1 to n. The left oflight 1 is light n, and the left of light k (1< k<= n) is thelight原创 2013-11-12 16:44:49 · 641 阅读 · 0 评论 -
acm-Matrix Power Series
Matrix Power Series时间限制:1000 ms | 内存限制:65535 KB难度:4描述Givena n × n matrix A anda positive integer k, find thesum S = A + A2 + A3 +… + Ak.输入The input contains exactly one test ca原创 2013-11-12 16:44:46 · 659 阅读 · 0 评论 -
acm-递推求值
递推求值时间限制:1000 ms | 内存限制:65535 KB难度:4描述给你一个递推公式:f(x)=a*f(x-2)+b*f(x-1)+c并给你f(1),f(2)的值,请求出f(n)的值,由于f(n)的值可能过大,求出f(n)对1000007取模后的值。注意:-1对3取模后等于2输入第一行是一个整数T,表示测试数据的组数(T随后每行有六个原创 2013-11-12 16:44:44 · 633 阅读 · 0 评论 -
acm-汉诺塔(三)
汉诺塔(三)时间限制:3000 ms | 内存限制:65535 KB难度:3描述在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上原创 2013-11-12 16:44:40 · 766 阅读 · 0 评论 -
acm-Same binary weight
Same binary weight时间限制:300 ms | 内存限制:65535 KB难度:3描述The binary weight of a positive integer is thenumber of 1's in its binary representation.for example,the decmialnumber 1 has a binary原创 2013-11-12 16:44:37 · 612 阅读 · 0 评论 -
acm-懒省事的小明
懒省事的小明时间限制:3000 ms | 内存限制:65535 KB难度:3描述 小明很想吃果子,正好果园果子熟了。在果园里,小明已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。小明决定把所有的果子合成一堆。因为小明比较懒,为了省力气,小明开始想点子了: 每一次合并,小明可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有原创 2013-11-12 16:44:33 · 694 阅读 · 0 评论 -
acm-扩展欧几里得
首先、扩展欧几里得定理:对于两个不全为0的整数a、b,必存在一组解x,y,使得ax+by==gcd(a,b);实现如下:int gcd(int a,int b){ int t,d; if(b==0) { x=1; y=0; //不明处1return a; } d=gcd(b,a%b); t=原创 2013-11-12 16:44:35 · 871 阅读 · 0 评论 -
acm-变态最大值
变态最大值时间限制:1000 ms | 内存限制:65535 KB难度:1描述Yougth讲课的时候考察了一下求三个数最大值这个问题,没想到大家掌握的这么烂,幸好在他的帮助下大家算是解决了这个问题,但是问题又来了。他想在一组数中找一个数,这个数可以不是这组数中的最大的,但是要是相对比较大的,但是满足这个条件的数太多了,怎么办呢?他想到了一个办法,把这一组数从开始把每相原创 2013-11-12 16:44:31 · 1129 阅读 · 0 评论 -
acm-对决
对决时间限制:1000 ms | 内存限制:65535 KB难度:0描述Topcoder要招进来了 n个新同学,Yougth计划把这个n个同学分成两组,要求每组中每个人必须跟另一组中每个同学进行一次算法对决,问存不存在一种分组方式在k场完成对决。(两组中每一组中人数都要大于0)输入有多组测试数据,每组测试数据两个数 n 和 k ,n和k都为0时表示输入结原创 2013-11-12 16:44:29 · 699 阅读 · 0 评论 -
acm-街区最短路径问题
街区最短路径问题时间限制:3000 ms | 内存限制:65535 KB难度:4描述一个街区有很多住户,街区的街道只能为东西、南北两种方向。住户只可以沿着街道行走。各个街道之间的间隔相等。用(x,y)来表示住户坐在的街区。例如(4,20),表示用户在东西方向第4个街道,南北方向第20个街道。现在要建一个邮局,使得各个住户到邮局的距离之和最少。求现在这原创 2013-11-12 16:43:24 · 626 阅读 · 0 评论 -
acm-求余数(同余定理)
求余数时间限制:1000 ms | 内存限制:65535 KB难度:3描述现在给你一个自然数n,它的位数小于等于一百万,现在你要做的就是求出这个数除10003之后的余数输入第一行有一个整数m(1随后m行每行有一个自然数n。输出输出n整除10003之后的余数,每次输出占一行。样例输入345465456541样例输出4原创 2013-11-12 16:43:21 · 2242 阅读 · 1 评论 -
acm-取石子(一)
取石子(一)时间限制:3000 ms | 内存限制:65535 KB难度:2描述一天,TT在寝室闲着无聊,和同寝的人玩起了取石子游戏,而由于条件有限,他/她们是用旺仔小馒头当作石子。游戏的规则是这样的。设有一堆石子,数量为N(1输入第一行是一个正整数n表示有n组测试数据输入有不到1000组数据,每组数据一行,有两个数N和M,之间用空格分隔。输出原创 2013-11-12 16:43:19 · 702 阅读 · 0 评论 -
acm-数的长度
数的长度时间限制:3000 ms | 内存限制:65535 KB难度:1描述 N!阶乘是一个非常大的数,大家都知道计算公式是N!=N*(N-1)······*2*1.现在你的任务是计算出N!的位数有多少(十进制)?输入首行输入n,表示有多少组测试数据(n随后n行每行输入一组测试数据 N( 0 输出对于每个数N,输出N!的(十进制)位数原创 2013-11-12 16:43:17 · 635 阅读 · 0 评论 -
acm-背包问题(贪心算法)
背包问题时间限制:3000 ms | 内存限制:65535 KB难度:3描述现在有很多物品(它们是可以分割的),我们知道它们每个物品的单位重量的价值v和重量w(1输入第一行输入一个正整数n(1随后有n测试数据,每组测试数据的第一行有两个正整数s,m(1输出输出每组测试数据中背包内的物品的价值和,每次输出占一行。样例输入13 155 1原创 2013-11-12 16:43:15 · 1594 阅读 · 0 评论 -
acm-阶乘之和
阶乘之和时间限制:3000 ms | 内存限制:65535 KB难度:3描述给你一个非负数整数n,判断n是不是一些数(这些数不允许重复使用,且为正数)的阶乘之和,如9=1!+2!+3!,如果是,则输出Yes,否则输出No;输入第一行有一个整数0每组测试数据有一个正整数n输出如果符合条件,输出Yes,否则输出No;样例输入2910原创 2013-11-12 16:43:13 · 651 阅读 · 0 评论