上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 34 下一页
摘要: 描述 EATER买来一堆好吃的,总共N+1份,共(N+1)/2种,每种准备了两份,同种都标上了相同的编号.本来准备与他家吃货一同分享,结果却发现被人偷吃了。。EATER发现总数少了一个,所以你的任务就是找出那一个是哪一种,告诉EATER,他就不吃那种,让给他妹子了。 输入 第一行一个奇数Nusing namespace std;int main(){ int n,a; while(scanf("%d",&n)!=EOF) { int result=0; while(n--) { scanf("%d",&a); ... 阅读全文
posted @ 2013-11-23 09:38 七年之后 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 描述尽管已经在南邮住了四年,Lithium对学校的全貌却并不怎么了解。在即将毕业之际,为了能多留住一些对母校的印象,Lithium经常沿着环绕南邮的道路散步。有一天散步时他突然想到了一个问题——南邮的占地面积到底是多大?由于最近Lithium绕了南邮无数圈,他清楚的记得学校边界上的每一个顶点,但他不知道该怎么用这些数据算出学校的面积,现在请你帮助Lithium解决这个问题。输入输入数据的第一行是一个正整数N(3#include#includeusing namespace std;class coordinate {public: float x; float y;};int ma... 阅读全文
posted @ 2013-11-23 09:38 七年之后 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 描述给定一个正整数N,请求出它所有约数的和。 比如,20有6个约数:1,2,4,5,10,20,所以,约数之和是1+2+4+5+10=42。 输入多组测试数据(不多于500000组),每组数据输入一行,一个正整数N(1≤N≤500000)。输入直至文件结尾。输出每组数据输出一行,一个正整数S:表示N的约数之和。样例输入1 2 4 8 16 样例输出1 3 7 15 31 #includeusing namespace std;const int Max_N=500000;int N,DS[Max_N+5];void Divisor_Sum(){ for(int i=1;i>N) {... 阅读全文
posted @ 2013-11-23 09:38 七年之后 阅读(219) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std;int main(){ int n; cin>>n; if(n>0&&n9&&n99&&n999&&n9999&&n99999&&n999999&&n9999999&&n<100000000) cout<<8*(n-9999999)+9+180+2700+36000+450000+5400000+63000000<<endl; else cout<<9 阅读全文
posted @ 2013-11-23 09:38 七年之后 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 描述全排列就是n个不同元素排成一列,我们不妨可以简单地将n个元素理解为自然数1,2,…,n。现假设不同的全排列按照字典序自动从小到大排,123…n的序号为零。编程读入n、m,输出序号为m(mint main(){ char e[21]={0}; long s[21]={1},m,j,k,l; int i,n; scanf("%d%ld",&n,&m); m=m+1; s[0]=1; for(i=1;i=0;i--) { j=(m-1)/s[i]+1;l=0;k=0; do{ k++; ... 阅读全文
posted @ 2013-11-22 10:35 七年之后 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 描述在一个nxn个方格组成的棋盘上的任一方格中放置一个皇后,该皇后可以控制他所在 的行,列以及对角线上的所有方格。对于给定的自然数n,在nxn个方格组成的棋盘上最少要放置多少个皇后才能控制棋盘上的所有方格,且放置的皇后互不攻击?设计一个拉斯维加斯算法,对于给定的自然数n (1£ n £100)计算在nxn个方格组成的棋盘上最少要放置多少个皇后才能控制棋盘上的所有方格,且放置的皇后互不攻击。输入输入的第一行有1个正整数n。输出输出计算出最少皇后数及最佳放置方案,第一行是最少皇后数;接下来的1行是皇后的最佳放置方案。样例输入8样例输出5 0 3 6 0 0 2 5 8 #inc 阅读全文
posted @ 2013-11-22 10:34 七年之后 阅读(1533) 评论(0) 推荐(0) 编辑
摘要: 描述给定2 个n×n矩阵a 和b,试设计一个判定a 和b 是否互逆的蒙特卡罗算法,算法的计算时间应为O(n2)。设计一个蒙特卡罗算法,对于给定的矩阵a和b,判定其是否互逆。输入 输入的第一行有1个正整数n,表示矩阵a和b 为n×n矩阵。接下来的2n行,每行有n个实数,分别表示矩阵a和b 中的元素。输出矩阵a 和b 互逆则输出YES,否则输出NO。样例输入3 1 2 3 2 2 3 3 3 3-1 1 0 1 -2 1 0 1 -0.666667 样例输出YES#include#include#define N 20int main(){ //freopen("a. 阅读全文
posted @ 2013-11-22 10:33 七年之后 阅读(946) 评论(0) 推荐(0) 编辑
摘要: 描述在n×n 格的棋盘上放置彼此不受攻击的n 个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2 个皇后不放在同一行或同一列或同一斜线上。设计一个解n 后问题的队列式分支限界法,计算在n´ n个方格上放置彼此不受攻击的n个皇后的一个放置方案。输入 第一行有1 个正整数n。输出 将计算出的彼此不受攻击的n个皇后的一个放置方案输出。第1行是n个皇后的放置方案。样例输入5样例输出1 3 5 2 4#includeusing namespace std;bool place(int k,i 阅读全文
posted @ 2013-11-22 10:32 七年之后 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 描述设有n种不同面值的硬币,各硬币的面值存于数组T[1:n]中。现要用这些面值的硬币来找钱。可以使用的各种面值的硬币个数存于数组Coins[1:n]中。对任意钱数0≤m≤20001,设计一个用最少硬币找钱m的方法。对于给定的1≤n≤10,硬币面值数组T和可以使用的各种面值的硬币个数数组Coins,以及钱数m,0≤m≤20001,编程计算找钱m的最少硬币数。输入输入的第一行中只有1个整数给出n的值,第2行起每行2个数,分别是T[j]和Coins[j]。最后1 行是要找的钱数m。输出输出计算的最少硬币数,问题无解时输出-1。样例输入3 1 3 2 3 5 3 18 样例输出5#includeusi 阅读全文
posted @ 2013-11-22 10:30 七年之后 阅读(349) 评论(0) 推荐(0) 编辑
摘要: 描述大于1 的正整数n可以分解为:n=x1*x2*…*xm。 例如,当n=12 时,共有8 种不同的分解式: 12=12; 12=6*2; 12=4*3; 12=3*4; 12=3*2*2; 12=2*6; 12=2*3*2; 12=2*2*3。 对于给定的正整数n,编程计算n共有多少种不同的分解式。 输入输入的第一行有1个正整数n (1≤n≤2000000000)。输出输出计算出的不同的分解式数。样例输入12样例输出8#include#include#includeusing namespace std;int main(){ int n,a[10000],dp[10000]; ... 阅读全文
posted @ 2013-11-22 10:29 七年之后 阅读(574) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 34 下一页