王道机试指南
「已注销」
这个作者很懒,什么都没留下…
展开
-
九度oj 1458汉诺塔III解题报告
题目描述:约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下、由小到大顺序串着由64个圆盘构成的塔。目的是将最左边杆上的盘全部移到右边的杆上,条件是一次只能移动一个盘,且不允许大盘放在小盘的上面。现在我们改变游戏的玩法,不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到下盘的上面。Daisy已经做过原来的汉诺塔问...原创 2018-02-24 15:33:23 · 228 阅读 · 0 评论 -
今天是今年第几天
#include#define ISYEAP(x) x%100!=0 &&x%4==0 || x%400==0int Day[13] ={0,31,28,31,30,31,30,31,31,30,31,30,31};int main(){ int Y,M,D,count; while(~scanf("%d%d%d",&Y,&M,&D)){ count=0; for(int i=原创 2018-02-07 11:55:18 · 312 阅读 · 0 评论 -
今天是今年第几天
#include#define ISYEAP(x) x%100!=0 && x%4==0 ||x%400==0 ?1 :0int DayOfMonth[13][2]={ 0,0, 31,31,//1 28,29,//2 31,31,//3 30,30,//4 31,31,//5 30,30,//6 31,31,//7 31,31,//8 30,30,//9 31,31,/原创 2018-02-07 11:55:52 · 1782 阅读 · 1 评论 -
谁是你的潜在朋友
#includeint main(){ int N,M,P[201],fri[201]={0}; while(~scanf("%d %d",&N,&M)){//N个读者,M本书 for(int i=1;i<=N;i++) { scanf("%d",&P[i]);//第i个人读了第P[i]本书 ++fri[P[i]];//该书有几个人阅读 } for(in原创 2018-02-07 11:56:30 · 201 阅读 · 0 评论 -
独木舟上的旅行
/*385 65 84 85 80 84 8390 390 45 60100 550 50 90 40 60样例输出533*/#include#includeusing namespace std;bool cmp(int x,int y){ return x>y;}int main(){ int s,num,curw; int w,n,weight[301原创 2018-02-07 11:57:04 · 153 阅读 · 0 评论 -
剩下的树
/*500 3100 200150 300470 471样例输出:298*/#includeint main(){ int L,M,i; int hash[10001]; while(~scanf("%d%d",&L,&M)){ for(i=0;i<=L;i++) hash[i]=1; for(i=0;i<M;i++){ int begin,end;原创 2018-02-07 11:58:05 · 181 阅读 · 0 评论 -
九度OJ二叉树遍历1078
#include<stdio.h>#include<string.h>#include<malloc.h>typedef struct BiTNode{ char data; //数据域 struct BiTNode *lchild; //左孩子 struct BiTNode *rchild; //右孩子 }BiTNode,*BiTre...原创 2018-02-12 23:07:10 · 196 阅读 · 0 评论 -
九度OJ1015还是A+B
#include<stdio.h>#include<string.h> int main(){ char A[20],B[20];//13240004231 42352 int k; while(~scanf("%s%s%d",A,B,&k)){ if(A[0]=='0'&&A[1]==0&&B[0]=='0'&...原创 2018-02-12 23:10:59 · 222 阅读 · 0 评论 -
九度OJ1118数制转换
/*求任意两个不同进制非负整数的转换(2进制~16进制),所给整数在long所能表达的范围之内。不同进制的表示符号为(0,1,...,9,a,b,...,f)或者(0,1,...,9,A,B,...,F)。输入只有一行,包含三个整数a,n,b。a表示其后的n 是a进制整数,b表示欲将a进制整数n转换成b进制整数。a,b是十进制整数,2 =< a,b <= 16。数据可能存在包含...原创 2018-02-12 23:12:25 · 201 阅读 · 0 评论 -
输出梯形
#includeint main(){ int i,j,h; while(~scanf("%d",&h)){ for(i=1;i<=h;i++){ for(j=1;j<=2*(h-i);j++) printf(" "); for(j=1;j<=h+2*(i-1);j++) printf("*"); printf("\n");原创 2018-02-07 11:54:47 · 194 阅读 · 0 评论 -
打印极值点下标
/*31010 12 12 11 11 12 23 24 12 121512 12 122 112 222 211 222 221 76 36 31 234 256 76 76 1512 14 122 112 222 222 222 221 76 36 31 234 256 76 73123456780 72 3 4 5 6 10 120 2 3 10 12 1原创 2018-02-07 11:54:12 · 299 阅读 · 0 评论 -
九度OJ又一版A+B1026
/*输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。输入格式:测试输入包含若干测试用例。每个测试用例占一行,给出m和A,B的值。当m为0时输入结束。输出A+B的m进制数。8 1300 482 1 70样例输出:25041000*/#include<stdio.h>int main(){...原创 2018-02-12 17:41:15 · 261 阅读 · 0 评论 -
九度OJ又一版A+B1026
/*输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。输入格式:测试输入包含若干测试用例。每个测试用例占一行,给出m和A,B的值。当m为0时输入结束。输出A+B的m进制数。8 1300 482 1 70样例输出:25041000*/#include<stdio.h>#include<...原创 2018-02-12 20:29:04 · 161 阅读 · 0 评论 -
九度OJ守形数1183
#include<stdio.h>int main(){ int n,i,sum; while(~scanf("%d",&n)){// 25*25=625 int tmp=n*n; if(n<10) tmp%=10; else tmp%=100; if(n==tmp) printf("YES!\n"); else pr...原创 2018-02-12 20:31:46 · 234 阅读 · 0 评论 -
九度OJdigit root1124
#include<stdio.h>int resolve(int dig){//12 int ans=0; while(dig){ ans+=dig%10; dig/=10; } if(ans>=10) return resolve(ans); return ans;}int main(){ int digit; while(~scanf...原创 2018-02-12 20:32:43 · 119 阅读 · 0 评论 -
九度OJ1074
/*打印所有不超过n(n<256)的,其平方具有对称性质的数。如11*11=121无任何输入数据 输出具有题目要求的性质的数。如果输出数据不止一组,各组数据之间以回车隔开。*/#include<stdio.h>int main(){ int i,buf[5]; for(i=0;i<256;i++) { int j=0; int sum=i*i; wh...原创 2018-02-12 20:34:05 · 200 阅读 · 0 评论 -
九度OJ反序数1064
#include<stdio.h>int main(){// printf("1089*9=%d\n",1089*9); for(int i=0;i<10;++i){ for(int j=0;j<10;++j){ if((1000+i*100+j*10+9)*9==9000+j*100+i*10+1){ printf("1%d%d9\n",i,j);...原创 2018-02-12 20:35:01 · 275 阅读 · 0 评论 -
九度OJ特殊乘法1083
#include<stdio.h>int main(){ char a[11],b[11]; while(~scanf("%s%s",&a,&b)){ int ans1=0,ans2=0; for(int i=0;a[i];i++) ans1+=a[i]-'0'; for(int j=0;b[j];j++) ...原创 2018-02-12 20:36:05 · 144 阅读 · 0 评论 -
+-
#include#include#includeusing namespace std;//AC;stack S1,S2;int Abs(int x){ return x>0? x:-x;}int main(){ int i; char str1[5001],str2[5001]; while(~scanf("%s%s",str1,str2)){ if(strlen(原创 2018-02-07 11:53:38 · 162 阅读 · 0 评论 -
九度OJ进制转换1138
/*一个长度最多为30位数字的十进制非负整数转换为二进制数输出。多组数据,每行为一个长度不超过30位的十进制非负整数。(注意是10进制数字的个数可能有30个,而非30bits的整数)输出:每行输出对应的二进制数。样例输入:0138样例输出:01111000*/#include<stdio.h>int main(){ long dig; int i,n...原创 2018-02-13 09:17:10 · 346 阅读 · 0 评论 -
九度OJ八进制1194
/*输入一个整数,将其转换成八进制数输出。输入包括一个整数N(0<=N<=100000)。输出:可能有多组测试数据,对于每组数据, 输出N的八进制表示数。样例输入:78971011*/#include<stdio.h>int main(){ int i,num; while(~scanf("%d",&num)){ i=0; ...原创 2018-02-13 09:18:09 · 260 阅读 · 0 评论 -
九度OJ 1040 Prime Number 解题报告
题目描述:Output the k-th prime number.输入:k≤10000输出:The k-th prime number.样例输入:37样例输出:517#include<stdio.h>#define MAX 10001int PrimeSize;//素数个数int Prime[MAX];//存素数int Mark[MAX];//标记素数//默认标记数组0...原创 2018-02-14 12:59:18 · 231 阅读 · 0 评论 -
九度OJ 1163 素数解题报告
题目描述:输入一个整数n(2<=n<=10000),要求输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数,如果没有则输出-1。输入:输入有多组数据。每组一行,输入n。输出:输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数(素数之间用空格隔开,最后一个素数后面没有空格),如果没有则输出-1。样例输入:100样例输出:11 31 41 61 71解题思路:素数筛...原创 2018-02-14 14:29:51 · 198 阅读 · 0 评论 -
九度OJ 1047素数判定 解题报告
题目描述:给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。输入:测试数据有多组,每组输入一个数n。输出:对于每组输入,若是素数则输出yes,否则输入no。样例输入:13样例输出:yes解题思路:情况1:单独对2进行素数判定:。情况2:小于2和偶数也需要单独进行判定:注意:必须先对情况1进行判定之后在对情况2进行判定情况3:从3开始每次自增2,就是只对奇数进行判定#include<...原创 2018-02-14 15:07:19 · 234 阅读 · 0 评论 -
九度OJ 1207质因数的个数解题报告
题目描述:求正整数N(N>1)的质因数的个数。相同的质因数需要重复计算。如120=2*2*2*3*5,共有5个质因数。输入:可能有多组测试数据,每组测试数据的输入是一个正整数N,(1<N<10^9)。输出:对于每组数据,输出N的质因数的个数。样例输入:120样例输出:5提示:注意:1不是N的质因数;若N为质数,N是N的质因数。#include<stdio.h>#in...原创 2018-02-14 20:19:48 · 211 阅读 · 0 评论 -
九度oj1153括号匹配问题
#include<stdio.h>#include<stack>using namespace std;stack <int> s;char str[110];char ans[110];int main(){ while(~scanf("%s",str)){ int i; for(i=0;str[i];i++){ if(str...原创 2018-02-08 17:59:46 · 176 阅读 · 0 评论 -
九度OJ 1087 约数的个数解题报告
题目描述:输入n个整数,依次输出每个数的约数的个数输入:输入的第一行为N,即数组的个数(N<=1000)接下来的1行包括N个整数,其中每个数的范围为(1<=Num<=1000000000)当N=0时输入结束。输出:可能有多组输入数据,对于每组输入数据,输出N行,其中每一行对应上面的一个数的约数的个数。样例输入:51 3 4 6 12样例输出:12346#include&...原创 2018-02-17 23:24:21 · 177 阅读 · 0 评论 -
九度OJ 1104 整除问题解题报告
题目描述:给定n,a求最大的k,使n!可以被a^k整除但不能被a^(k+1)整除。输入:两个整数n(2<=n<=1000),a(2<=a<=1000)输出:一个整数.样例输入:6 10样例输出:1#include<stdio.h>int main(){ int i,n,a,tmp,k; while(~scanf("%d%d",&n,&a))...原创 2018-02-17 21:43:29 · 269 阅读 · 0 评论 -
九度OJ1442:A sequence of numbers 解题报告
题目描述:Xinlv wrote some sequences on the paper a long time ago, they might be arithmetic or geometric sequences. The numbers are not very clear now, and only the first three numbers of each sequence are...原创 2018-02-21 14:00:14 · 201 阅读 · 0 评论 -
re----排序
#include#includeusing namespace std;int main(){ int n,i,a[101]; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); printf("%d",a[0]); for(i=1;i<n;i++) printf(" %d",a[i原创 2018-02-07 18:08:54 · 174 阅读 · 0 评论 -
review----成绩排序
#include#include#includeusing namespace std;struct student{ char name[101]; int age; int score; bool operator <(student &E) const{ if(score!=E.score) return score<E.score; if(strcmp(name原创 2018-02-07 18:01:17 · 175 阅读 · 0 评论 -
九度OJ最大公约数1056
#include<stdio.h>int gcd(int a,int b){ if(b==0) return a; else return gcd(b,a%b);}int main(){ int a,b; while(~scanf("%d%d",&a,&b)) printf("%d\n",gcd(a,b)); ...原创 2018-02-13 10:33:40 · 499 阅读 · 0 评论 -
九度OJ最大公约数1056
#include<stdio.h>int gcd(int a,int b){//(14,49)(49,14)(14,7) while(b){//b=49 b=14 b=7 b=0 int t=a%b;//t=14 t=7 t=0 a=b;//a=49 a=14 a=7 b=t;//b=14 b=7 b=0 } r...原创 2018-02-13 10:59:41 · 569 阅读 · 0 评论 -
九度OJ最大公约数1056
#include<stdio.h>int gcd(int a,int b){//(14,49)(49,14)(14,7) while(b){//b=49 b=14 b=7 b=0 int t=a%b;//t=14 t=7 t=0 a=b;//a=49 a=14 a=7 b=t;//b=14 b=7 b=0 } r...原创 2018-02-13 11:11:10 · 476 阅读 · 0 评论 -
九度OJ1438最小公倍数
/*10 14样例输出:70*/#include<stdio.h>int gcd(int a,int b){//(14,49)(49,14)(14,7)(7,0) if(b==0) return a;//7 else return gcd(b,a%b);//(49,14)(14,7)(7,0)}int lcm(int a,int b){ ret...原创 2018-02-13 11:34:07 · 217 阅读 · 0 评论 -
九度OJ1438最小公倍数
#include<stdio.h>int gcd(int a,int b){ while(b){ int t=a%b; a=b; b=t; } return a;}int lcm(int a,int b){ return a*b/gcd(a,b);}int main(){ int a,b; while(~scanf("%d%d",&a,&...原创 2018-02-13 11:38:12 · 195 阅读 · 0 评论 -
九度OJLeast Common Multiple 1439
/*23 5 7 156 4 10296 936 1287 792 110510296*/#include<stdio.h>int gcd(int a,int b){ return b==0?a:gcd(b,a%b);}int lcm(int a,int b){ return a*b/gcd(a,b);}int main(){ int T...原创 2018-02-13 18:44:36 · 270 阅读 · 0 评论 -
九度OJ素数判定1047
/*给定一个数n,要求判断其是否为素数(0,1,负数都是非素数)。输入:测试数据有多组,每组输入一个数n。输出:对于每组输入,若是素数则输出yes,否则输入no。样例输入:13样例输出:yes*/#include<iostream>#include<cmath>using namespace std;bool Judge(int x){ i...原创 2018-02-13 18:45:50 · 172 阅读 · 0 评论 -
九度OJPrime Numbe1040
#include<stdio.h>#define MAX 110001int mark[MAX]; //标记int prime[MAX]; //存素数int primeSize; //素数个数//2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 3...原创 2018-02-13 23:27:22 · 142 阅读 · 0 评论 -
EXCEL排序
#include#include#includeusing namespace std;struct E{ char id[10]; char name[10]; int score;}stu[100001];bool cmp1(E a,E b){ return strcmp(a.id,b.id)<0;}bool cmp2(E a,E b){//按姓名非递减排序 in原创 2018-02-06 22:29:36 · 187 阅读 · 0 评论