- 1016
- 1017
- 1018
- 1019
- 1020
#includeusing namespace std; int main(){ string a,b; int d1,d2; int n1,n2; int p1,p2; n1=n2=0; p1=p2=0; cin>>a>>d1; cin>>b>>d2; for(int i=0;i 1017 #includeusing namespace std; int main(int argc, char const *argv[]) { //a被除数,b除数,q商,r余数 string a; vector q; int b,r=0; cin>>a; cin>>b; int i=0; if((a[0]-'0')%b==(a[0]-'0')){ r=a[0]-'0'; i=1; } for(;i 1.大数的除法
1018
先判断大数第一位数能否除以除数,若不能即商为0,则记录该位的余数但不记录(输出)该位的商,
若能除即商不是0,则记录余数并记录(输出)商;
再创建循环将上一位余数作为下一位除法的十位数,此时用容器记录每一位的商(或直接输出商),并记录余数给下一位用。#includeusing namespace std; struct ren{ char ss; int w=0; int p=0; int l=0; int b=0; int c=0; int j=0; }jia,yi; int main(int argc, char const *argv[]) { int n; cin>>n; for(int i=0;i >jia.ss>>yi.ss; if(jia.ss=='B'&&yi.ss=='C'||jia.ss=='C'&&yi.ss=='J'||jia.ss=='J'&&yi.ss=='B'){ jia.w++; yi.l++; switch (jia.ss) { case 'B':jia.b++;break; case 'C':jia.c++;break; case 'J':jia.j++;break; } } else if(yi.ss=='B'&&jia.ss=='C'||yi.ss=='C'&&jia.ss=='J'||yi.ss=='J'&&jia.ss=='B'){ yi.w++; jia.l++; switch (yi.ss) { case 'B':yi.b++;break; case 'C':yi.c++;break; case 'J':yi.j++;break; } } else{ jia.p++; yi.p++; } } cout< 1.三个数比大小:max(max( ,),)
1019#includeusing namespace std; bool cmp(int a,int b){//降序 return a>b; } int toNumber(int a[],int l){ int num=0; for(int i=0;i =0;i--){ a[i]=num%10; num=num/10; } } int main() { int array_n[4],n=0; cin>>n; toArray(n,array_n,4); sort(array_n,array_n+4,cmp); int jx=toNumber(array_n,4); sort(array_n,array_n+4); int sx=toNumber(array_n,4); if(jx-sx==0){ printf("%04d",jx); cout<<" - "; printf("%04d",sx); cout<<" = "<<"0000"< 1.数组长度计算 sizeof()
int n[4]={'1','2','5','6'}; cout<2.字符串string补上前置字符
string s; cin>>s; s.insert(0,4-s.size(),'0');//这里用于补充前置零至4位数 //s.insert(size_typepos, size_typen, charTc); //从pos开始向后添加n个字符c3.do{}while();和while(){}的区别
1020
while先判断后执行,do while先执行后判断;
当不满足循环条件时,while循环一次都不会执行,do while循环已经执行了一次不满足循环条件的内容;
在一些情况下,do while循环可以减少代码量(例如PATB1019)#includeusing namespace std; struct yb{ double kc; double sj; double dj; }; bool cmp(yb a,yb b){ return a.dj>b.dj; } int main(){ int n,d; double sum=0; cin>>n>>d; yb nyb[n]; for(int i=0;i >nyb[i].kc; for(int i=0;i >nyb[i].sj; for(int i=0;i 0) { if(d-nyb[i].kc>=0) { sum=sum+nyb[i].sj; d=d-nyb[i].kc; } else { sum=sum+nyb[i].dj*d; d=0; } } else break; } printf("%.2f",sum); return 0; }



