百练题解
何以陌生
这个作者很懒,什么都没留下…
展开
-
百练习题分类
1. 麻烦题 1697, 1712, 1713, 1720, 1729, 1765, 1772,1858, 1872, 1960, 1963, 2050, 2122, 2162, 2219, 2237 2. 简单题目 1000, 1003, 1004, 1005, 1007, 1046, 1207,1226, 1401, 1504, 1552, 1607, 1657,转载 2012-12-13 17:37:15 · 932 阅读 · 0 评论 -
百练 4029 数字反转
总时间限制:1000ms 内存限制:65535kB 描述给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例 2)。 输入输入共 1 行,一个整数 N。 输出输出共 1 行,一个整数,表示反转后的新数。 样例输入样例 #1:123样例 #2原创 2013-07-01 20:29:44 · 2880 阅读 · 1 评论 -
百练 2885 计算反序数
# include int main(){ int f; long int str,i,a,a_back; while(scanf("%ld",&str)!=EOF) { f=1; if(str<0) { printf("-"); str=-str; } if(str==0) printf("0"); a_bac原创 2013-09-16 00:00:02 · 888 阅读 · 0 评论 -
百练 1013 Counterfeit Dollar
# include # include char left[3][7],right[3][7],result[3][5];int isLight(char c){ int i; for(i=0;i<3;i++) { switch(result[i][0]) { case 'e': if(strchr(right[i],c) != NU原创 2013-09-15 06:58:32 · 805 阅读 · 0 评论 -
百练 3195 最大公约数
# include int main(){ int num1,num2,t,a,b; scanf("%d %d",&num1,&num2); b=num1*num2; if(num1<num2) { t=num1; num1=num2; num2=t; } while((a=num1%num2)!=0)原创 2013-09-15 06:57:38 · 885 阅读 · 0 评论 -
百练 1658 Eva's Problem
# include int main(){ int i,n[6]; int t; scanf("%d",&t); while(t--) { for(i=0;i<4;i++) scanf("%d",&n[i]); if((n[2]/n[1])==(n[1]/n[0])) { n[4]=n[3]*(n[1]/n[0]); } if((n[2]原创 2013-09-15 06:55:58 · 713 阅读 · 0 评论 -
百练 3245 空调排名
#include int main() { printf("5 2 1 3 4\n"); return 0; }原创 2013-09-15 06:55:45 · 1213 阅读 · 0 评论 -
百练 3265 aaa
# include int main(){ char a[2]; gets(a); puts(a); return 0;}原创 2013-09-15 06:47:04 · 1174 阅读 · 0 评论 -
百练 3659 判断是否为C语言的合法标识符
# include # include int main(){ char c,s[80]; int i,j,n,f; scanf("%d",&n); for(j=0;j<n;j++) { getchar(); gets(s); f=0; for(i=0;(c=s[i])!='\0';i++) if(c==' '||c=58&&c90&原创 2013-09-15 06:45:54 · 1299 阅读 · 0 评论 -
百练 2696 计算表达式的值
# include int main(){ int n,i,j,a,b,s; char str[100][3]; scanf("%d",&n); for(i=0;i<n;i++) { s=0; scanf("%d ",&a); for(j=0;j<3;j++) scanf("%c",&str[i][j]); scanf(" %d",&b)原创 2013-09-14 20:04:58 · 805 阅读 · 0 评论 -
百练 3256 矩阵的乘法
# include int main(){ int x1,y1,x2,y2; int a[100][100],b[100][100],c[100][100]; int row,col,p; scanf("%d%d",&x1,&y1); for(row=0;row<x1;row++) for(col=0;col<y1;col++) scanf("%d原创 2013-09-14 20:00:41 · 806 阅读 · 0 评论 -
百练 2693 最远距离
#include#include int main(){ int n,i; float p[100][2],dis=-1.0; //dis? 注意用float scanf("%d",&n); for (i=0;i<n;i++) { int j; scanf("%f%f",&p[i][0],&p[i][1]); for (j=0;j<i;j++)原创 2013-09-14 19:56:57 · 942 阅读 · 0 评论 -
百练 3258 兔子产子
# include int main(){ int str[20]; int n,i,j,m; scanf("%d",&m); for(j=0;j<m;j++) { scanf("%d",&n); for(i=1;i<n;i++) { str[0]=1;原创 2013-09-14 19:55:56 · 960 阅读 · 0 评论 -
百练 2810 完美立方
# include int main(){ int a,b,c,i,n; scanf("%d",&n); if(n<=100) { for(i=0;i<=n;i++) { for(a=2;a<=n;a++) for(b=a;b<=n;b++) for(c=b;c<=n;c++) if(i*i*i==a*a*原创 2013-09-14 19:53:58 · 1083 阅读 · 0 评论 -
百练 2739 计算对数
# include# includeint main(){ int n; double a,b; scanf("%d",&n); while(n--) { scanf("%lf%lf",&a,&b); printf("%d\n",int(log10(b)/log10(a))); } return 0;}原创 2013-09-14 19:50:57 · 1961 阅读 · 0 评论 -
百练 2942 吃糖果
# include int main(){ int str[20]; int N,i; scanf("%d",&N); if(N>0&&N<20) { str[0]=1; str[1]=1; for(i=1;i<N;i++) str[i+1]=str[i]+str[i-1]; printf("%d\n",str[N]); } return 0;}原创 2013-01-19 09:31:44 · 552 阅读 · 0 评论 -
百练 1183 反正切函数的应用
# include int main(){ int long a,m; scanf("%ld",&a); for(m=a;;m--) if(!((a*a+1)%m)) break; printf("%ld\n",2*a+m+(a*a+1)/m); return 0;}原创 2013-01-19 09:30:21 · 973 阅读 · 0 评论 -
百练 2750 鸡兔同笼
# includeint main(){ int i,n,t,s,a; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a); if(a<32768) { s=a%4; t=a%2; if(s==0&& t==0) printf("%d %d\n",a/4,a/2); if(s!=0&&t==0)原创 2012-12-16 01:33:59 · 522 阅读 · 0 评论 -
百练 2808 校门外的树
# includeint main(){ int L,M,count=0; int a,b,i,str[10001]; scanf("%d%d",&L,&M); for(i=0;i<=L;i++) str[i]=1; for(;M>0;M--) { scanf("%d %d",&a,&b); for(;a<=b;a++)原创 2012-12-16 01:37:24 · 753 阅读 · 0 评论 -
百练 2975 Caesar密码
#include#includeint main(){ char a[]="VWXYZABCDEFGHIJKLMNOPQRSTU"; char s[201],A[12]; int i; while(1) { gets(A); if(strcmp(A,"ENDOFINPUT")==0) break; gets(s); gets(A); for(i=0;s原创 2012-12-16 02:01:54 · 626 阅读 · 0 评论 -
百练 2913 加密技术
# include # include int main(){ char s[100],t[100]; int n[7]={4,9,6,2,8,7,3}; int l,i; gets(s); l=strlen(s); for(i=0;i<l;i++) { t[i]=s[i]+n[i%7]; if(t[i]>122||t[i]<32) t[i]=t[i]原创 2013-01-19 01:28:11 · 912 阅读 · 0 评论 -
百练 2870 求矩阵的加法
# includeint main(){ int a[3][3],b[3][3],c[3][3]; int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&b[i][j]); for(i=0原创 2013-01-14 20:26:51 · 454 阅读 · 0 评论 -
百练 2719 陶陶摘苹果
# include int main(){ int high[10]; int i,m,count=0; for(i=0;i<10;i++) scanf("%d",&high[i]); scanf("%d",&m); for(i=0;i<10;i++) if(m+30>=high[i]) count++; printf("%d\n",count); ret原创 2013-01-14 10:51:20 · 1087 阅读 · 0 评论 -
百练 3177 判决素数个数
# include int main(){ int i,j,t,sum=0; int a,b; scanf("%d%d",&a,&b); if(a>b) { t=a; a=b; b=t; } for(j=a;j<=b;j++) { for(i=2;i<j;i++) if(j%i==0) break; if(i==j) s原创 2013-01-03 10:11:58 · 1959 阅读 · 2 评论 -
百练 4045 与3和5无关的数
# include int main(){ int n,a,b,c,i,s=0; scanf("%d",&n); for(i=1;i<=n;i++) { a=i%10; b=i/10%10; c=i/100; if(i%3!=0&&a!=3&&b!=3&&c!=3&&i%5!=0&&a!=5&&b!=5&&c!=5) s=s+i*i; } printf("原创 2012-12-25 13:07:11 · 531 阅读 · 0 评论 -
百练 2701 与7无关的数
# include int main(){ int n,a,b,i,s=0; scanf("%d",&n); for(i=1;i<=n;i++) { a=i%10; b=i/10; if(i%7!=0&&a!=7&&b!=7) s=s+i*i; } printf("%d\n",s); return 0;}注:a和b分别表示个位和十位上的数字,判原创 2012-12-25 10:46:34 · 555 阅读 · 0 评论 -
百练 2796 数字求和
# include int main(){ int i,a[7],s=0; for(i=0;i<6;i++) scanf("%d",&a[i]); for(i=1;i<6;i++) if(a[0]>a[i]) s=s+a[i]; printf("%d\n",s); return 0;}原创 2012-12-23 00:37:40 · 784 阅读 · 0 评论 -
百练 2887 能被3,5,7整除的数
# include int main(){ int n,i,a[3]={3,5,7},c; while(scanf("%d",&n)!=EOF) { c=0; for(i=0;i<3;i++) if(n%a[i]==0) c++; if(c==0) printf("n\n"); if(c==1) for(i=0;i<3;i++) if(原创 2012-12-16 02:36:00 · 838 阅读 · 0 评论 -
百练 3250 字母重排
题目连接:http://bailian.openjudge.cn/practice/3250/# include int main(){ int i,j,k,t; char str[1024]; scanf("%s",str); for(i=0,j=0;str[i]!='\0';i++) { if((str[i]>='a'&&str[原创 2014-01-01 14:30:34 · 1071 阅读 · 0 评论 -
百练 2728 第一个C++程序
# include int main(){ printf("Welcome to C++!\n"); return 0;}原创 2012-12-16 02:22:09 · 447 阅读 · 0 评论 -
百练 1450 Gridland
# include int main(){ int m,n; int x; int l; scanf("%d",&x); int i; for(i=1;i<=x;i++) { printf("Scenario #%d:\n",i); scanf("%d%d",&m,&n); l=m*n; printf("%d",l); if(m%2=原创 2012-12-16 02:14:55 · 499 阅读 · 0 评论 -
百练 2809 计算2的N次方
# include int main(){ int N,i,j; int a[100]={2}; scanf("%d",&N); for(i=1;i<N;i++) { for(j=0;j<100;j++) a[j]=a[j]*2; for(j=0;j<99;j++) { a[j+1]=a[j+1]+a[j]/10; a[j]=a[j]%10;原创 2012-12-16 02:12:20 · 2378 阅读 · 0 评论 -
百练 2981 大整数加法
#include int main(){char a[201],b[201],c[202];int a1[201]={0},b1[201]={0};int m,i,j,s,f,n;gets(a);gets(b);m=strlen(a);for(j=0,i=m-1;i>=0;i--,j++)a1[j]=a[i]-'0';n=strlen(b);for(j=0,i=n-1;i>原创 2012-12-16 02:10:44 · 1075 阅读 · 0 评论 -
百练 1844 Sum
# include int main(){ int n,i,s; scanf("%d",&n); for(i=1;;i++) { s=i*(i+1)/2; if(s<n) continue; if((s-n)%2==0) {原创 2013-09-16 00:02:56 · 727 阅读 · 0 评论 -
百练 2781 Sum
# include int main(){ int n,i,s; scanf("%d",&n); for(i=1;;i++) { s=i*(i+1)/2; if(s<n) continue; if((s-n)%2==0) {原创 2013-09-16 00:00:56 · 708 阅读 · 0 评论 -
百练 2758 菲波那契数列(2)
# include int get(long int i){ int a1=1,a2=1,ak,k; if(i>0&&i<3) return 1; else { for(k=3;k<=i;k++) { ak=a1+a2; a1=a2%1000; a2=ak%1000; } } return ak;}原创 2013-09-16 00:00:45 · 1238 阅读 · 0 评论 -
百练 2722 学分绩点
# include int main(){ int n; int a[10],b[10]; double GPA,t; scanf("%d",&n); int i; for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<n;i++) { scanf("%d",&b[i]); } double sum1原创 2013-09-16 00:00:22 · 1265 阅读 · 0 评论 -
百练 2682 循环移动
# include int main(){ int n,m,i,str[100000]; scanf("%d %d",&n,&m); for(i=0;i<n;i++) scanf("%d",&str[i]); for(i=n-m;i<n;i++) printf("%d ",str[i]); for(i=0;i<n-m;i++) printf("%d "原创 2013-09-15 06:58:42 · 899 阅读 · 0 评论 -
百练 2656 Unhappy Jinjin
# include int main(){ while(1) { int i, n; int maxday, maxvalue = -1; scanf("%d", &n); if (n == 0) break; for (i = 1; i <= n; i++) { int a, b; scanf("%d %d原创 2013-09-15 06:57:14 · 790 阅读 · 0 评论 -
百练 2699 自整除数
# include int main(){ int n,m,i; scanf("%d",&n); for(i=10;i<=n;i++) { m=0; m=i%10; m=m+i/10; if(i%m==0) { printf("%d\n",i);continue;} } return 0;}原创 2013-09-14 19:48:44 · 870 阅读 · 0 评论