习,天天刷题。
小明知道了2014年是特殊年份,很好奇还有哪些年份是特殊年份(各数字位互不相等)。然后,他拿出了一张纸,开始在纸上从2014写起,他想就这么每个年份数下去。作为学过计算概论的你,实在看不惯这种浪费体力、浪费纸张、一点也不环保的作风,于是你决定写程序帮帮他。 关于输入
第一行为总测试数量n。( 0 < n < 10000 )
接下来的n行,每行有一个整数m,代表年份。( 1000 <= m <= 9000) 关于输出
对于每个年份m,输出一个整数y。y是大于m的最小的特殊年份(各数字位互不相等)。 输入的限制保证了 1000 < y < 9999。 例子输入
2 1987 3102
例子输出
2013 3104
提示
大于1987的特殊年份有很多,如2013,、2014等,按照题目要求,应该输其中最小的特殊年份,因此输入为1987时输出2013。
题目 - 最好特效药
来源 描述
北大医学部2013计算概论 marcus
上周天天因为感冒去了次北大校医院,医生诊断了下他的症状,认为应给他止咳退烧。医生考虑了M种退烧药、N种止咳药,任意选择一种总共有M*N种组合,考虑到期末临近,天天希望选择最快治愈的药物组合。 关于输入
一行输入M, N分别代表M种退烧药与N种止咳药。
接下来M行N列的数字k表示对应的药物组合能在k天内治愈天天。 k的范围是[1,30],M和N的范围是[1,20],M和N可能不同. 关于输出
能最快治愈天天的药物组合编号,如见效天数相同,先按m从小到大输出,若m相同,
则按n从小到大输出。 例子输入
3 3 10 3 3 4 3 5 6 7 8
例子输出
1 2 1 3 2 2
提示
注意输出的下标序号不是0序的。样例中: 第1行第2列为3 第1行第3列为3 第2行第2列为3
题目 - 2013年诺贝尔生理学奖中的基因模式识
别
来源 描述
诺贝尔奖官方网站发布消息,将2013年诺贝尔生理学或医学奖授予美国科学家詹姆斯-E. 罗斯曼和兰迪- W. 谢克曼、德国科学家托马斯- C. 苏德霍夫,以表彰他们发现细胞内部囊泡运输调控机制。这三位科学家的研究成果解答了细胞如何组织其内部最重要的运输系统之一囊泡传输系统的奥秘。他们发现了能控制细胞传输系统不同方面的三类基因,从基因层面上为了解细胞中囊泡运输的严格管理机制提供了新线索。 为了能够了解更多的机制,下面需要同学来帮助三位诺奖得主分析控制囊泡传输系统的基因序列,当某条碱基链上连续为13个或以上胸腺嘧啶(T)的碱基序列Pattern时,即有可能跟囊泡传输有关。
构成DNA的碱基共有4种,分别为腺瞟呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。我们知道,在两条互补碱基链的对应位置上,腺瞟呤总是和胸腺嘧啶配对,鸟嘌呤总是和胞嘧啶配对。你的任务就是根据一条单链上的碱基序列,判断此段碱基序列或其配对碱基序列上,是否存在跟囊泡传输有关的Pattern(即是否存在连续为13个或以上胸腺嘧啶(T)的碱基子序列)。 关于输入
第一行是一个正整数n,表明共有n条待分析的碱基链。
李涛
以下共有n行,每行用一个字符串表示一条碱基链。这个字符串只含有大写字母A、T、G、C,分别表示腺瞟呤、胸腺嘧啶、鸟嘌呤和胞嘧啶。每条碱基链的长度都不超过255。 关于输出
共有n行,当此段碱基序列或其配对碱基序列上,存在跟囊泡传输有关的Pattern时,输出“Yes”,否则输出“No”。 例子输入
2
AAAAAAAAAAAAAAAAATTTT ATCG
例子输出
Yes No
题目 - 拔牙
来源 描述
计算概论-医学部-2013-高良才-助教-Hao
浩助教当了一学期的口腔二班助教,有一天,他突然对各种动物的牙齿颗数产生了兴趣,经过查阅资料,他发现,一般成人有32颗牙齿,狗有42颗牙齿,鳄鱼有66颗牙齿,蜗牛据说有25600颗牙齿。
OK,假设你是一名优秀的牙医,目标是将某种动物所有的n颗牙齿全部拔掉,考虑到患者的感受,每个月只能拔掉1颗或者2颗牙齿,直到拔完为止,你的任务是写一个程序,求一共有多少种不同的拔牙方式。
例如有3颗牙齿,你可以选择第一个月拔掉1颗,第二个月拔掉2颗,也可以选择第一个月拔掉2颗,第二个月拔掉1颗,也可以选择三个月每个月拔1颗。这样一共有3种拔牙方式。 关于输入
输入只有一行,表示牙齿的颗数n(0 < n < 30)。 关于输出
输出所有可能的拔牙方式的种类数。 例子输入
4
例子输出
5
提示
可以考虑递归,将原问题根据拔1颗或者拔2颗分成两个子问题。