摘要:
11560 过剩数时间限制:2000MS 内存限制:65535K题型: 编程题 语言: 无限制Description对于一个正整数n,设S为n所有不同因子的和,如果有S-2*n>0则说n为过剩数,现给两个正整数a和b(11)倍都是过剩数。如6为完全数,那么 6的倍数都是过剩数。证明:若x为完全数或过剩数,它的因子之和(除去自身)不小于x,对于nx,x所有因子的n倍都是nx的因子,其和不小于nx,除此之外,nx还有别的因子(如1),所以nx必然是过剩数。根据上面这条定理效率便会提高很多下面是代码:#include #include using namespace std;typedef l 阅读全文
摘要:
#include #include void f(int n,int *a,int cur){ int i,j; if(cur==n) { for(i=0;i<n;i++) printf("%d ",a[i]); printf("\n"); } else for(i=1;i<=n;i++) { int ok=1; for(j=0;j<cur;j++) if(a[j]==i) ok=0; if(ok) { a[cur]=i; f(n,a,cur+1); } }}int main() { int n,i,a[11]; scanf(" 阅读全文
摘要:
17082 两个有序数序列中找第k小 时间限制:1000MS 内存限制:65535K 提交次数:0 通过次数:0 题型: 编程题 语言: 无限制 Description 已知两个已经排好序(非减序)的序列X和Y,其中X的长度为m,Y长度为n, 现在请你用分治算法,找出X和Y的第k小的数,算法时间复杂度为O(max{logm, logn})。 此题请勿采用将序列X和Y合并找第k小... 阅读全文
摘要:
10901 Missile时间限制:1000MS 内存限制:65535K提交次数:40 通过次数:7DescriptionLong, long ago, country A invented a missile system to destroy the missiles from their enemy. That system can launch only one missile to destroy multiple missiles if the heights of all the missiles form a non-decrease sequence.But recently 阅读全文
摘要:
8633 回文划分时间限制:1000MS 内存限制:1000K题型: 编程题 语言: 无限制Description 我们说一个字符串是回文串,那么意味着这个串从两边读起来的字母都是一样的。例如racecar是回文串,然而fastcar则不是。 对一个串的划分意思是将一个串划分为若干个部分... 阅读全文
摘要:
1142巡逻的士兵Description有N个士兵站成一队列, 现在需要选择几个士兵派去侦察。为了选择合适的士兵, 多次进行如下操作: 如果队列超过三个士兵, 那么去除掉所有站立位置为奇数的士兵, 或者是去除掉所有站立位置为偶数的士兵。直到不超过三个战士,他们将被送去侦察。现要求统计按这样的方法,总共可能有多少种不同的正好三个士兵去侦察的士兵组合方案。注: 按上法得到少于三士兵的情况不统计。1 #include int f(int n){ if(n==0||n==1||n==2||n==4) return 0; if(n==3) return 1; if(n%2==0) return ... 阅读全文