06 2014 档案
摘要:【描述】在成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板。这是一张有8个大小相同的格子的魔板:1 2 3 4 8 7 6 5 我们知道魔板的每一个方格都有一种颜色。这8种颜色用前8个正整数来表示。可以用颜色的序列来表示一种魔板状态,规定从魔板的左上角开始,沿顺时针方向依...
阅读全文
摘要:【描述】农夫约翰从来只用调配得最好的饲料来喂他的奶牛。饲料用三种原料调配成:大麦,燕麦和小麦。他知道自己的饲料精确的配比,在市场上是买不到这样的饲料的。他只好购买其他三种混合饲料(同样都由三种麦子组成),然后将它们混合,来调配他的完美饲料。给出三组整数,表示 大麦:燕麦:小麦 的比例,找出用这三种饲...
阅读全文
摘要:【描述】一架纺车有五个纺轮,这五个不透明的轮子边缘上都有一些缺口。这些缺口必须被迅速而准确地排列好。每个轮子都有一个起始标记(在0度),这样所有的轮子都可以在统一的已知位置开始转动。轮子按照角度变大的方向旋转(即0经过旋转到达1的位置),所以从起始位置开始,在一定的时间内,它们依次转过1度,2度等等...
阅读全文
摘要:【描述】考虑排好序的N(N 2 #include 3 #include 4 #include 5 #include 6 const int maxn=32+5; 7 using namespace std; 8 long long c[maxn][maxn],n,o=0; 9 long lo...
阅读全文
摘要:【描述】N的阶乘写作N!表示小于等于N的所有正整数的乘积。阶乘会很快的变大,如13!就必须用32位整数类型来存储,70!即使用浮点数也存不下了。你的任务是找到阶乘最后面的非零位。举个例子,5!=1*2*3*4*5=120所以5!的最后面的非零位是2,7!=1*2*3*4*5*6*7=5040,所以最...
阅读全文
摘要:【描述】已知一个N枚邮票的面值集合(如,{1分,3分})和一个上限K ——表示信封上能够贴K张邮票。计算从1到M的最大连续可贴出的邮资。例如,假设有1分和3分的邮票;你最多可以贴5张邮票。很容易贴出1到5分的邮资(用1分邮票贴就行了),接下来的邮资也不难:6 = 3 + 37 = 3 + 3 + 1...
阅读全文
摘要:【描述】奶牛们开始对用射电望远镜扫描牧场外的宇宙感兴趣。最近,他们注意到了一种非常奇怪的脉冲调制微波从星系的中央发射出来。他们希望知道电波是否是被某些地外生命发射出来的,还是仅仅是普通的的星星发出的。帮助奶牛们用一个能够分析他们在文件中记下的记录的工具来找到真相。他们在寻找长度在A到B之间(含)在每...
阅读全文
摘要:【描述】 N个不同的颜色的不透明的长方形(1 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int maxn=1000+20; 8 using namespace std; 9 int lx[maxn],...
阅读全文
摘要:【描述】对于一给定的素数集合 S = {p1, p2, ..., pK},来考虑那些质因数全部属于S 的数的集合。这个集合包括,p1, p1p2, p1p1, 和 p1p2p3 (还有其它)。这是个对于一个输入的S的丑数集合。注意:我们不认为1 是一个丑数。你的工作是对于输入的集合S去寻找集合中的第...
阅读全文
摘要:【描述】学生在我们USACO的竞赛中的得分越多我们越高兴。我们试着设计我们的竞赛以便人们能尽可能的多得分,这需要你的帮助。我们可以从几个种类中选取竞赛的题目,这里的一个"种类"是指一个竞赛题目的集合,解决集合中的题目需要相同多的时间并且能得到相同的分数。你的任务是写一个程序来告诉USACO的职员,应...
阅读全文
摘要:【描述】 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的场。当然,他需要你的帮助。 约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了用最小的消费,他想铺设最短的光纤去连接所有的农场。 你将得到一份各农场之间连接费用的列表,你必须找出...
阅读全文
摘要:【描述】写一个程序,输入一个形如N/D的分数(N是分子,D是分母),输出它的小数形式。 如果小数有循环节的话,把循环节放在一对圆括号中。例如, 1/3 =0.33333333 写成0.(3), 41/333 = 0.123123123... 写成0.(123), 用xxx.0 等表示整数。 典型的转...
阅读全文
摘要:【描述】现在是晚餐时间,而母牛们在外面分散的牧场中。 农民约翰按响了电铃,所以她们开始向谷仓走去。 你的工作是要指出哪只母牛会最先到达谷仓(在给出的测试数据中,总会有且只有一只最快的母牛)。 在挤奶的时候(晚餐前),每只母牛都在她自己的牧场上,一些牧场上可能没有母牛。 每个牧场由一条条道路和一个或多...
阅读全文
摘要:【描述】农民 John的农场里有很多牧区。有的路径连接一些特定的牧区。一片所有连通的牧区称为一个牧场。但是就目前而言,你能看到至少有两个牧区通过任何路径都不连通。这样,Farmer John就有多个牧场了。John想在牧场里添加一条路径(注意,恰好一条)。对这条路径有以下限制:一个牧场的直径就是牧场...
阅读全文
摘要:【描述】农夫John在外面的田野上搭建了一个巨大的用栅栏围成的迷宫。幸运的是,他在迷宫的边界上留出了两段栅栏作为迷宫的出口。更幸运的是,他所建造的迷宫是一个“完美的”迷宫:即你能从迷宫中的任意一点找到一条走出迷宫的路。给定迷宫的宽度W(1 2 #include 3 #include 4 #inc...
阅读全文
摘要:【题目描述】两只牛逃跑到了森林里。农夫John开始用他的专家技术追捕这两头牛。你的任务是模拟他们的行为(牛和John)。追击在10x10的平面网格内进行。一个格子可以是:一个障碍物, 两头牛(它们总在一起), 或者 农民John. 两头牛和农民John可以在同一个格子内(当他们相遇时),但是他们都不...
阅读全文
摘要:【题目描述】有些公司是其他公司的部分拥有者,因为他们获得了其他公司发行的股票的一部分。例如,福特公司拥有马自达公司12%的股票。据说,如果至少满足了以下三个条件之一,公司A就可以控制公司B了:公司A = 公司B。公司A拥有大于50%的公司B的股票。公司A控制K(K >= 1)个公司,记为C1, .....
阅读全文
摘要:【描述】母牛们不但创建了它们自己的政府而且选择了建立了自己的货币系统。由于它们特殊的思考方式,它们对货币的数值感到好奇。传统地,一个货币系统是由1,5,10,20 或 25,50, 和 100的单位面值组成的。母牛想知道有多少种不同的方法来用货币系统中的货币来构造一个确定的数值。举例来说, 使用一个...
阅读全文
摘要:【题目描述】请考虑一个由1到N(N=3, 4, 5 ... 9)的数字组成的递增数列:1 2 3 ... N。 现在请在数列中插入“+”表示加,或者“-”表示减,“ ”表示空白(例如1-2 3就等于1-23),来将每一对数字组合在一起(请不要在第一个数字前插入符号)。 计算该表达式的结果并判断其值是...
阅读全文
摘要:【题目描述】农民约翰准备购买一群新奶牛。在这个新的奶牛群中,每一个母亲奶牛都生两小奶牛。这些奶牛间的关系可以用二叉树来表示。这些二叉树总共有N个节点(3 2 #include 3 #include 4 #include 5 #include 6 #include 7 int f[100]...
阅读全文
摘要:【题目描述】在生物学中,一些生物的结构是用包含其要素的大写字母序列来表示的。生物学家对于把长的序列分解成较短的序列(即元素)很感兴趣。如果一个集合 P 中的元素可以通过串联(元素可以重复使用,相当于 Pascal 中的 “+” 运算符)组成一个序列 S ,那么我们认为序列 S 可以分解为 P 中的元...
阅读全文
摘要:【描述】在IOI98的节日宴会上,我们有N(10=0)的灯。例如:1,4,7...一个计数器C记录按钮被按下的次数。当宴会开始,所有的灯都亮着,此时计数器C为0。你将得到计数器C(0 2 #include 3 #include 4 #include 5 #include 6 #include...
阅读全文
摘要:【题目描述】循环数是那些不包括0且没有重复数字的整数(比如81362)并且还应同时具有一个有趣的性质, 就像这个例子:如果你从最左边的数字开始(在这个例子中是8)向右数最左边这个数(如果数到了最右边就回到最左边),你会停止在另一个新的数字(如果停在一个相同的数字上,这个数就不是循环数).就像: 8 ...
阅读全文
摘要:【题目描述】对于从1到N (1 2 #include 3 #include 4 #include 5 #include 6 const int Max=1000000; 7 using namespace std; 8 long long cnt[Max],n; 9 int main()1...
阅读全文
摘要:【题目描述】一类书的序言是以罗马数字标页码的。传统罗马数字用单个字母表示特定的数值,以下是标准数字表:I 1 L 50 M 1000V 5 C 100X 10 D 500最多3个同样的可以表示为10n的数字(I,X,C,M)可以连续放在一起,表示它们的和:III=3CCC=300可表示为5x1...
阅读全文
摘要:【题目描述】给出 N,B 和 D,要求找出 N 个由0或1组成的编码(1 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 int ans[70];10 ...
阅读全文
摘要:【题目描述】纪念“逝去”的Wecing农民JOHN以拥有世界上最健康的奶牛为傲。他知道每种饲料中所包含的牛所需的最低的维他命量是多少。请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少。给出牛所需的最低的维他命量,输出喂给牛需要哪些种类的饲料,且所需的饲料剂量最少。维他命量以整数表示...
阅读全文
摘要:【题目描述】排序是一种很频繁的计算任务。现在考虑最多只有三值的排序问题。一个实际的例子是,当我们给某项竞赛的优胜者按金银铜牌排序的时候。在这个任务中可能的值只有三种1,2和3。我们用交换的方法把他排成升序的。写一个程序计算出,给定的一个1,2,3组成的数字序列,排成升序所需的最少交换次数。【格式】I...
阅读全文
摘要:【问题描述】对任意给定的一个自然数 n(n 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 const int maxn=160+10; 9 using namespace std;10 struct...
阅读全文
摘要:【题目描述】我们憨厚的USACO主人公农夫约翰(Farmer John)以无法想象的运气,在他生日那天收到了一份特别的礼物:一张“幸运爱尔兰”(一种彩票)。结果这张彩票让他获得了这次比赛唯一的奖品——坐落于爱尔兰郊外的一座梦幻般的城堡!喜欢吹嘘的农夫约翰立刻回到有着吹嘘传统的威斯康辛老家开始吹嘘了,...
阅读全文
摘要:【问题描述】检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子,如下例,就是一种正确的布局。上面的布局可以用序列2 4 6 1 3 5来描述,第i个数字表示在第i行的相应位置有一个棋子,如下:行号1 2 3 4 ...
阅读全文
摘要:【题目描述】观察下面的数字金字塔。写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面...
阅读全文
摘要:【题目描述】农民约翰的母牛总是生产出最好的肋骨。你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们。农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组成一个质数,举例来说: 7 3 3 1全部肋骨上的数字 7331是质数;三根肋骨 733是质数;...
阅读全文
摘要:【题目描述】因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。写一个程序来找出范围[a,b](5 2 #include 3 #include 4 #include 5 #include 6 #include 7 const int Max=1...
阅读全文
摘要:【题目描述】农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数,最初,A和B桶都是空的,而C桶是装满牛奶的。有时,约翰把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了。当然每一次灌注都是完全的。由于节约,牛奶不会有丢失。写一个程序去帮助约翰找出当A桶是空的时候,C桶...
阅读全文
摘要:【题目描述】一个等差数列是一个能表示成a, a+b, a+2b,..., a+nb (n=0,1,2,3,...)的数列。在这个问题中a是一个非负的整数,b是正整数。写一个程序来找出在双平方数集合(双平方数集合是所有能表示成p的平方 + q的平方的数的集合)S中长度为n的等差数列。【格式】TIME ...
阅读全文
摘要:【题目描述】考虑将如此安排在一个 3 x 3 行列中的九个时钟: |-------| |-------| |-------| | | | | | | | |---O | |---O | | O | | |...
阅读全文
摘要:【描述】给定4个矩形块,找出一个最小的封闭矩形将这4个矩形块放入,但不得相互重叠。所谓最小矩形指该矩形面积最小。所有4个矩形块的边都与封闭矩形的边相平行,图1示出了铺放4个矩形块的6种方案。这6种方案是仅可能的基本铺放方案。因为其它方案能由基本方案通过旋转和镜像反射得到。可能存在满足条件且有着同样面...
阅读全文
摘要:【題目描述 】下面是一个乘法竖式,如果用我们给定的那n个数字来取代*,可以使式子成立的话,我们就叫这个式子牛式。 * * * x * * ---------- * * * * * * ---------- * * * *数字只能取...
阅读全文
摘要:【題目描述】据说如果你给无限只母牛和无限台巨型便携式电脑(有非常大的键盘),那么母牛们会制造出世上最棒的回文。你的工作就是去寻找这些牛制造的奇观(最棒的回文)。在寻找回文时不用理睬那些标点符号、空格(但应该保留下来以便做为答案输出),只用考虑字母'A'-'Z'和'a'-'z'。要你寻找的最长的回文的...
阅读全文
摘要:【描述】在一个夜黑风高,下着暴风雨的夜晚,farmer John的牛棚的屋顶、门被吹飞了。 好在许多牛正在度假,所以牛棚没有住满。 牛棚一个紧挨着另一个被排成一行,牛就住在里面过夜。 有些牛棚里有牛,有些没有。 所有的牛棚有相同的宽度。 自门遗失以后,farmer John必须尽快在牛棚之前竖立起新...
阅读全文
摘要:【题目描述】由于乳制品产业利润很低,所以降低原材料(牛奶)价格就变得十分重要。帮助梅丽乳业找到最优的牛奶采购方案。梅丽乳业从一些奶农手中采购牛奶,并且每一位奶农为乳制品加工企业提供的价格是不同的。此外,就像每头奶牛每天只能挤出固定数量的奶,每位奶农每天能提供的牛奶数量是一定的。每天梅丽乳业可以从奶农...
阅读全文
摘要:【题目描述】如果一个数从左往右读和从右往左读都是一样,那么这个数就叫做“回文数”。例如,12321就是一个回文数,而77778就不是。当然,回文数的首和尾都应是非零的,因此0220就不是回文数。事实上,有一些数(如21),在十进制时不是回文数,但在其它进制(如二进制时为10101)时就是回文数。编一...
阅读全文
摘要:【题目描述】回文数是指从左向右念和从右向左念都一样的数。如12321就是一个典型的回文数。给定一个进制B(2 2 #include 3 #include 4 #include 5 #include 6 const int maxl=1000; 7 using namespace std; 8...
阅读全文