题目 题目描述 有一串项链,它是由红蓝白三种颜色的珠子组成的,b代表蓝色,w代表白色,r代表红色,当它完整的时候是一个闭合的环形.现在它在某一个节点断裂了,之前的环形也随之变成了直线形.从两端开始收集这些珠子,收集的规则是只能收集与端点珠子相同颜色的,且是连在一起的珠子.白色的珠子可以染色成为红色的或者是蓝色的,也就是说白色的珠子可以看成是蓝色的或者是红色的.例如我现在有一串断裂的项链,它的珠子排列成下面的这种方式: bwwbrbbrwwr 当我从左边开始收集珠子的时候,我只能收集到bwwb,从…
beads解题报告 —— icedream61 博客园(转载请注明出处)------------------------------------------------------------------------------------------------------------------------------------------------[题目] 输入文件:第一行N:第二行一个字符串A,长度为N.字符串中,仅有r.w.b三种字符,分别代表红.白.蓝. A代表一串项链,有三种颜…
题目 题目描述 牛式的定义,我们首先需要看下面这个算式结构: * * * x * * ------- * * * <-- partial product 1 * * * <-- partial product 2 ------- * * * * 这是一个乘法结构,我们给出一个数字集合,例如{2,3,5,7},如果我们能够集合里面的数字代替所有的*,使得这个乘法成立的话,那么这就是一个牛式.对于给出的集合,我们需要找出总共有多少个牛式. 数据范围 集合中的数字只能是从{1,2,3,4,5,6,7…
题目 题目描述 现在给你一个数集,里面的数字都是由p^2+q^2这种形式构成的0 <= p,q <= M,我现在需要你在其中找出一个长为N的等差数列,数列中的第一个数字为a,公差为b,当你找到多个这样的数列时,输出数列的a b值,输出顺序按照b的值从小到大排序,当b的值一样的时候,按照a的值从小到大排序输出. 数据范围 (3 <= N <= 25) (1 <= M <= 250) 样例输入 5 7 样例输出 1 4 37 4 2 8 29 8 1 12 5 12 13…
题目 题目描述 农夫John的牛从农场逃脱出去了,所以他决定用一个密码锁来把农场的门锁起来,这个密码锁有三个表盘,每个表盘都是环形的,而且上面刻有1~N,现在John设了一个开锁密码,而且这个锁的设计者也有一个开锁密码.这个锁有一个特点,那就是它的容错方式,当我们输入密码时,如果我们的密码与正确的开锁密码相比较,对应的每一个表盘上的数字的距离都相差不超过2时,这个密码便可以打开这个锁. 例如:John设定的开锁密码为(1,2,3),锁的设计者的开锁密码为(4,5,6).如果我们现在将锁设定为(1…
题目 题目描述 某农夫有一个养牛场,所有的牛圈都相邻的排成一排(共有S个牛圈),每个牛圈里面最多只圈养一头牛.有一天狂风卷积着乌云,电闪雷鸣,把牛圈的门给刮走了.幸运的是,有些牛因为放假,所以没在自己的牛圈里(只有C个牛圈里面有牛).现在农夫需要去用木板将牛圈的门补好,为了快速修复,农夫可以用一块长的木板直接将相邻连续的几个牛圈一起钉好封闭.现在有一个木板供应商,他能够供应M块木板,每块木板的长度任意.农夫想让最终消耗的木板总长度最小,请编写一个程序计算. 数据范围 1 <= M <= 50…
题目 题目描述 Merry Milk Makers 公司的业务是销售牛奶.它从农夫那里收购N单位的牛奶,然后销售出去.现在有M个农夫,每个农夫都存有一定量的牛奶,而且每个农夫都会有自己的定价.假设所有农夫的牛奶量总是可以满足MMM公司的进货量,现在我们需要做的就是计算出MMM最少需要花费多少钱来购买N单位的牛奶. 数据输入第一行给出两个整数N与M,接下来依次给出每个农夫牛奶的单价Pi与存有的牛奶的量Ai. 数据范围 0 <= N <= 2000000 0 <= M <= 5000…
题目 题目描述 有一些数(如 21),在十进制时不是回文数,但在其它进制(如二进制时为 10101)时就是回文数. 编一个程序,从文件读入两个十进制数N.S.然后找出前 N 个满足大于 S 且在两种以上进制(二进制至十进制)上是回文数的十进制数. 数据范围 1 <= N <= 15 0 < S < 10000 样例输入 3 25 样例输出 26 27 28 解题思路 按照Palindromic Squares的解题思路,我们直接枚举所有的数字,然后判断是否满足条件,满足条件的输出即…
题目 题目描述 输入一个基数B,现在要从1到300之间找出一些符合要求的数字N.如果N的平方转换成B进制数之后是一个回文串,那么N就符合要求.我们将N转换成B进制数输出,然后再将N的平方转换成B进制数输出来.注意,字母A, B分别表示数字10, 11,以此类推. 数据范围 2 <= B <= 20 1 <= N <= 300 样例输入 10 样例输出 1 1 2 4 3 9 11 121 22 484 26 676 101 10201 111 12321 121 14641 202…
题目 题目描述 有3个农夫每天早上五点钟便起床去挤牛奶,现在第一个农夫挤牛奶的时刻为300(五点钟之后的第300个分钟开始),1000的时候结束.第二个农夫从700开始,1200结束.最后一个农夫从1500开始,2100结束.现在我们可以算出,在一段时间内至少有一个农夫在持续挤牛奶的最长时间间隔为900分钟(1200-300),在他们挤牛奶的过程中,没有人挤牛奶的最长时间间隔为300分钟(1500-1200). 现在有N个农夫,给出他们每个人挤牛奶的开始时刻与结束时刻.分别计算出在一段时间内至少…