摘要:
Problem 有n只袋鼠。每只袋鼠的大小用一个整数表示。一只小袋鼠能装进一只大袋鼠的条件是,大袋鼠的大小至少是小袋鼠的两倍。 每只大袋鼠最多可以装一只袋鼠。小袋鼠被装进大袋鼠之后就不能再装其它的袋鼠了。 小袋鼠被装进大袋鼠之后就不能被我们看见了。请找出一个装袋鼠的方案,使得被看见的袋鼠最少。 (袋 阅读全文
摘要:
Problem 苏塞克王国是世界上创新技术的领先国家,在王国中有n个城市,标记为1到n。 由于小K的研究,我们最终能过在两个城市之间建立传输管道,一个传输管道能单向连接两个城市,即,一个从城市x到城市y的传输管道不能被用于从城市y传输到城市x。在每个城市之间的运输系统已经建立完善,因此,如果从城市x 阅读全文
摘要:
Problem Siruseri 城中的道路都是单向的。不同的道路由路口连接。按照法律的规定, 在每个路口都设立了一个 Siruseri 银行的 ATM 取款机。令人奇怪的是,Siruseri 的酒吧也都设在路口,虽然并不是每个路口都设有酒吧。Banditji 计划实施 Siruseri 有史以来最 阅读全文
摘要:
Problem 有n个同学(编号为 1 到 n )正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为 i 的同学的信息传递对象是编号为 Ti的同学。游戏开始时,每人都只知道自己的生日。之后每一轮中,所有人会同时将自己当前所知的生日信息告诉各自的信息传递对象(注意:可能有人 阅读全文
摘要:
Problem 我们已知n对夫妻的婚姻状况,称第i对夫妻的男方为Bi,女方为Gi。若某男Bi与某女Gj曾经交往过(无论是大学,高中,亦或是幼儿园阶段,i≠j),则当某方与其配偶(即Bi与Gi或Bj与Gj)感情出现问题时,他们有私奔的可能性。不妨设Bi和其配偶Gi感情不和,于是Bi和Gj旧情复燃,进而 阅读全文
摘要:
Problem 把整个游戏简化为,每次生成一个[0,n)的随机数,如果这个随机数和给出的m个数字中的其中一个数字相等,那么就停止生成随机数,否则继续生成,求出所有生成的数的和的期望。 Solution \(E = \sum_{i=0}^{n-1} p_i \times(i+[flag_i]\time 阅读全文
摘要:
Problem 小b有一个字符串S和n个字符串words[1...n],现在她想知道有多少个i满足words[i]是S的子序列。 S的长度≤50000,1≤n≤5000,words[i]长度≤50. 样例解释 a,acd,ace都是abcde的子序列,但bb不是。 Solution 存一下s各个字母 阅读全文
摘要:
Problem 牛牛刚开始有一个正整数n。 每次操作牛牛可以选择一个自己有的数字x,把x分为两正整数y和z,需满足x=y+z,然后获得y z的收益。 (当然,在这个过程中,牛牛会失去x这个数字,并且获得y和z这2个数字。) 牛牛一共可以分k次,牛牛希望最大化这k次的收益之和。 因为分割的结果y和z是 阅读全文
摘要:
Problem 给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5。 Solution 把每个数所有因数搞出来,如果第二次出现就停止。 Code #include<stdio.h> #inclu 阅读全文
摘要:
Problem 大家都熟悉堆栈操作。一个堆栈一般有两种操作,push和pop。假设所有操作都是合法的并且最终堆栈为空。我们可以有很多方法记录堆栈的操作, (1) 对每个pop操作,我们记录它之前一共有多少个push操作。 (2) 对每个pop操作,我们记录这个被Pop的元素曾经被压上了几个。 例如: 阅读全文