标签:
//1073
这题 某参考说 只要让这串数字乘以这串数字的长度加1的数,得到的全为9时,则输出cyclic,否则not cyclic,想了很久还是 想不出来 这是 为什么。。如果自己做的话,要用字符串来,很麻烦的样子 。这里就copy 下那代码吧(c 的)1 #include<stdio.h> 2 3 #include<string.h> 4 5 int main() 6 7 { 8 9 int i,k,m,temp; 10 11 int result[62]; 12 13 char a[62]; 14 15 16 17 while(scanf("%s",a)!=EOF) 18 19 { 20 21 k=strlen(a); 22 23 m=0; 24 25 result[k]=0; 26 27 for(i=k-1;i>=0;i--) 28 29 //关键是得出输入的数字串乘以(k+1)时,所得结果全为9时,输出cyclic 30 31 { 32 33 temp=(k+1)*(a[i]-‘0‘)+result[i+1]; //加上result[i+1]中原有的数字及十位数 34 35 result[i]=temp/10; //得到十位数 36 37 if(temp%10!=9) 38 39 { 40 41 m=1; 42 43 break; 44 45 } 46 47 } 48 49 if(m) 50 51 printf("%s is not cyclic\n",a); 52 53 else 54 55 printf("%s is cyclic\n",a); 56 57 } 58 59 return 0; 60 61 }
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 5 int main() 6 { 7 /*string s; 8 char a; 9 cin>>s; 10 a=cin.get(); 11 if(a==‘ ‘) 12 cout<<123; 13 */ 14 15 string s; 16 17 18 19 int n;//n个blocks,一个block 包括 每个block输入的m 和 m次转换 20 cin>>n; 21 22 //cout<<endl; 这个空行不是程序里设计的,而是自己输入即可==|| 加了会出现PE,小纠结 23 while(n>0) 24 { 25 int m; 26 string s; 27 cin>>m; 28 while(m>0) 29 { 30 char a; 31 cin>>s; 32 a=cin.get();//获取s后的字节 ‘ ’或者‘\n’ 33 int l=s.length(); 34 for(int i=s.length()-1;i>=0;i--) 35 { 36 cout<<s[i]; 37 } 38 if(a==‘ ‘) 39 cout<<" "; 40 else 41 { 42 cout<<endl; 43 m--; 44 } 45 } 46 47 n--; 48 if(n>0) 49 cout<<endl;//There is a blank line between output blocks. 50 } 51 52 return 0; 53 }
1 #include <iostream> 2 #include <string> 3 #include <sstream>//用于 int 转 string 4 5 6 using namespace std; 7 8 int sum=0; 9 10 int getRoot(string s) 11 { 12 13 while(true) 14 { 15 sum=0;//sum循环要变为初值0 16 for(int i=0;i<=s.length()-1;i++)//记得 去长度是.length()...有括号!! 17 18 sum+=s[i]-‘0‘;//ASC码中 0、1、2...编号是连续的,所以字符-‘0’正好是这个int值 19 //很经典的 string 转为 int 的 方法 20 stringstream ss; //定义 stringstream ss 21 ss<<sum; // ss<< int类型 22 ss>>s; // ss>>string 类型 int 转为 string的 方法 23 24 25 if(sum<10) 26 break; 27 28 } 29 return sum; 30 } 31 32 int main() 33 { 34 string a; 35 36 while(true) 37 { cin>>a; 38 39 if (a[0]==‘0‘&&a.length()==1) 40 break; 41 else 42 cout<<getRoot(a)<<endl; 43 44 } 45 }
1 #include <iostream> 2 #include <iomanip> 3 using namespace std; 4 int main() 5 { 6 cout<<"n e"<<endl; 7 cout<<"- -----------"<<endl; 8 double s=1,t=1; 9 10 for(int n=0;n<=9;n++) 11 { 12 if (n==0) 13 cout<<n<<" "<<1<<endl ; 14 else if(n==1) 15 16 cout<<n<<" "<<2<<endl ; 17 else if(n==2) 18 cout<<n<<" "<<2.5<<endl ; 19 else 20 { 21 for(int i=1;i<=n;i++) 22 { 23 for(int j=1;j<=i;j++) 24 { 25 t=t*j; 26 27 } 28 s=s+1/t; 29 t=1;//t要变为初值 30 } 31 32 33 cout<<n<<" "<<fixed<<setprecision(9)<<s <<endl ; 34 s=1;//s要变为初值 35 } 36 } 37 return 0; 38 }
1 #include <iostream> 2 #include <vector> 3 using namespace std; 4 typedef struct cl// typedef struct (定义数据结构,以数组形式保存) cl 数据名 5 { 6 int r,g,b; 7 8 } CL; 9 10 11 int main() 12 { 13 CL setCl[16];//CL 定义数据cl setCL[] setCl数据数组名,[]设置数组大小 14 15 int r,g,b; 16 int i=0; 17 while(i<16) 18 { 19 cin>>r>>g>>b; 20 21 if(r>=0&&r<=255&&g>=0&&g<=255&&b>=0&&b<=255) 22 { 23 setCl[i].r=r; 24 setCl[i].b=b; 25 setCl[i].g=g; 26 27 i++; 28 } 29 } 30 31 while(true) 32 { 33 34 cin>>r>>g>>b; 35 36 if (r==-1) 37 break; 38 int D1=(r-setCl[0].r)*(r-setCl[0].r)+(g-setCl[0].g)*(g-setCl[0].g)+(b-setCl[0].b)*(b-setCl[0].b); 39 int n=0; 40 for(i=0;i<16;i++) 41 { 42 43 int D2=(r-setCl[i].r)*(r-setCl[i].r)+(g-setCl[i].g)*(g-setCl[i].g)+(b-setCl[i].b)*(b-setCl[i].b); 44 45 if(D2<D1) 46 { 47 D1=D2; 48 n=i; 49 } 50 51 } 52 53 cout<<"("<<r<<","<<g<<","<<b<<") maps to ("<<setCl[n].r<<","<<setCl[n].g<<","<<setCl[n].b<<")"<<endl; 54 55 56 } 57 58 return 0; 59 }
1 #include <iostream> 2 #include <iomanip> 3 #include <math.h>//acos 4 using namespace std; 5 6 int main() 7 { 8 int n,z; 9 float a,b; 10 cin>>n ; 11 for(int i=1;i<=n;i++) 12 { 13 cin>>a>>b; 14 z=int(acos(-1)*(a*a+b*b)/100+1);//acos 取反余弦 15 cout<<"Property "<<i<<": This property will begin eroding in year "<<z<<"."<<endl; 16 } 17 cout<<"END OF OUTPUT."<<endl; 18 }
1 #include <iostream> 2 #include <iomanip> 3 using namespace std; 4 5 int main() 6 { 7 float wage,sum=0; 8 9 for(int i=1;i<=12;i++) 10 { 11 cin>>wage; 12 sum+=wage; 13 14 15 } 16 17 cout<<"$"<<fixed <<setprecision(2) <<sum/12<<endl; 18 return 0; 19 }
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 int n=0; 6 float c=1; 7 double sum; 8 while(c!=0.00) 9 { 10 cin>>c; 11 12 sum=0;//sum的值要在循环里面赋予,因为每次循环sum都要归零 13 if(c>=0.01&&c<=5.20) 14 {for(n=1;c>sum;n++) 15 16 sum+=1.00/(n+1); 17 18 19 20 cout<<n-1<<" card(s)"<<endl; 21 } 22 } 23 return 0; 24 25 }
1 #include <iostream> 2 #include <iomanip>//用于控制位数 <<fixed<<setprecision(?)<<a 3 #include <math.h> //引入sqrtf函数 4 using namespace std; 5 int main() 6 { 7 int num,i,m,n; 8 float dis; 9 cin>>num; 10 for(i=1;i<=num;i++) 11 { 12 cin>>m>>n; 13 14 cout<<"Scenario #"<<i<<":"<<endl; 15 16 if(m%2==0 || n%2==0) 17 18 dis=(float)m*n; 19 20 21 else 22 23 dis=m*n-1+sqrtf(2);//sqrt 是 double类型 ,sqrtf是 float 24 25 cout<<fixed<<setprecision(2)<<dis<<endl;//<<fixed<<setprecision(?)<<a ?为小数点位数,a为数 26 cout<<endl;//记得空行 27 28 } 29 return 0; 30 }
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 int a,b; 6 while(cin>>a>>b) 7 8 cout<<a+b<<endl; 9 10 return 0; 11 }
标签:
原文地址:http://www.cnblogs.com/xiaoyesoso/p/4235175.html