江南信息学第十三周练习20221202题解
1001 : 分数乘法
#include<bits/stdc++.h> using namespace std; float a,b,c,d; int main() { char t; cin>>a>>t>>b>>t>>c>>t>>d; printf("%.3f",a/b*c/d); return 0; }
1002 : 打印字符
#include <iostream> using namespace std; int main(){ cout<<"\tA"<<endl; cout<<endl; cout<<"A\t\tA"<<endl; cout<<endl; cout<<"\tA"<<endl; return 0; }
1003 : C语言实验题――三个数排序
#include<bits/stdc++.h> using namespace std; int main(){ int a,b,c; scanf("%d,%d,%d",&a,&b,&c); cout<<min(min(a,b),c)<<" "; cout<<a+b+c-min(min(a,b),c)-max(max(a,b),c); cout<<" "<<max(max(a,b),c); return 0; }
1004 : 自动浇水器
#include<bits/stdc++.h> using namespace std; int main(){ double x; cin>>x; if(x>0 && x<1) printf("%.2f",10-x*x); else if(x>4 && x<25) printf("%.2f",10-2*sqrt(x)); else if(x>1 && x<4) printf("%.2f",10-x); return 0; }
1005 : C语言循环水题1
#include<iostream> #include<cstdio> #include<cstring> #include<ctime> #include<bits/stdc++.h> using namespace std; int main(){ int n,sum=0; cin>>n; for(int i=1;i<=n;i++){ sum+=i; } cout<<sum; return 0; }
1006 : 求1到n的和
#include<bits/stdc++.h> using namespace std; int main(){ int n,sum=0; cin>>n; for(int i=1;i<=n;i++){ sum+=i; } cout<<sum<<endl; return 0; }
1007 : 整数的因子
#include<bits/stdc++.h> using namespace std; int main(){ long long int n; cin>>n; for(int i=1;i<=n;i++){ if(n%i==0)cout<<i<<endl; } return 0; }
1008 : 零钱兑换
完全背包:
#include<bits/stdc++.h> using namespace std; long long int dp[10001]; int a[4]={0,5,10,20}; int main(){ int n; cin>>n; dp[0]=1; for(int i=1;i<=3;i++) for(int j=a[i];j<=n;j++) dp[j]=dp[j]+dp[j-a[i]]; cout<<dp[n]; return 0; }
循环:
#include<bits/stdc++.h> using namespace std; int main() { //兑换零钱 int n,sum = 0; cin>>n; for(int i=0;i<=n/5;i++) { for(int j=0;j<=n/10;j++) { for(int k=0;k<=n/20;k++) { if(5*i+10*j+20*k==n) sum++; } } } cout<<sum; return 0; }
1009 : 大宝和二宝
#include<bits/stdc++.h> #include<math.h> using namespace std; int main(){ int a,b,c,d; while(cin>>a>>b>>c>>d){ int e=(a-c)/b; int k=a-e; cout<<d-k<<endl; } return 0; }
1010 : bth的旅行问题
#include <iostream> #include <math.h> using namespace std; int main(){ int a,b,c,d; while(cin>>a>>b){ if(a==0&&b==0)break; c=a*1.5; d=b*0.75; cout<<(c+a)*20+(b+d)*8<<endl; } return 0; }