东塘J1R-期中测试-404
pico_fence · · 个人记录
B3649 [语言月赛202208] 大小比较
思路
先定两个变量a,b,输入a和b在来一个if判断:if(a<=b){cout<<"YE5";return 0;}如果不是,就在在外面cout<<"N0";
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int a,b;
int main(){
cin>>a>>b;
if(a<=b){
cout<<"YE5";
return 0;
}
cout<<"N0";
return 0;
}
B2029 大象喝水
思路
先定义个double r,h。在输入r和h,然后新建一个 double v=3.14rr*h来存桶的体积公式(也是圆柱的体积公式),最后cout<<(20000/v);为什么这样写呢,因为题目一开始说要以厘米为单位(也相当于在题目中一开始他是立方厘米),但输出是题目要以升为单位,所以要在输出时转换单位,而一升是一千立方厘米,可为什么是除以两万而不是处以一千呢,因为题目又说了大象要喝20升水才能解渴,那么一桶水就是20生,所以1000乘以20=20000,所以是除以20000。
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
double r,h;
int main(){
cin>>h>>r;
double v=3.14*r*r*h;
cout<<ceil(20000/v);
return 0;
}
P5726 【深基4.习9】打分
思路
先定三个变量(两个比大小变量和一个普通变量),一个数组(用来存数):int maxn=INT_MIN;int minn=INT_MAX;int n;a[1005];然后输入n,再来一个for循环来输入a数组然后排一个序,在定一个变量:double sum=0;也用来存东西,然后用for循环写两个判断,然后用for循环来sum+=a[i],最后cout<<fixed<<setprecision(2)<<(sum-minn-maxn)/(n-2);
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int maxn=INT_MIN;
int minn=INT_MAX;
int a[1005];
int n;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+1+n);
double sum=0;
for(int i=1;i<=n;i++){
if(maxn<a[i]){
maxn=a[i];
}
}
for(int i=1;i<=n;i++){
if(minn>a[i]){
minn=a[i];
}
}
for(int i=1;i<=n;i++){
sum+=a[i];
}
cout<<fixed<<setprecision(2)<<(sum-minn-maxn)/(n-2);
return 0;
}
B4041 [GESP202409 四级] 区间排序
思路
先定一个变量和一个数组n,a[110],输入n和a[110],在定一个变量q,输入q,再写一个while循环来搞多组样例,然后定l和r,输入l和r,再来排个序,最后输出用for循环输出a[i];
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int a[110];
int n;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
int q;
cin>>q;
while(q--){
int l,r;
cin>>l>>r;
sort(a+l,a+r+1);
}
for(int i=1;i<=n;i++){
cout<<a[i]<<" ";
}
return 0;
}
P1223 排队接水
思路
先定义个结构体struct node{ int t; int id; }a[1010];再来一个bool cmp(node a,node b){ if(a.t!=b.t){ return a.t<b.t; }else{ return a.id<b.id; } }然后创建一个变量n,输入n,再来一个for循环来输入a[i],和a[i].id=i;然后拍个序,再定两个变量double ans=0,sum=0,再来一个for循环for(int i=1;i<=n;i++){ ans+=sum; sum+=a[i].t; } 最后输出。
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
struct node{
int t;
int id;
}a[1010];
bool cmp(node a,node b){
if(a.t!=b.t){
return a.t<b.t;
}else{
return a.id<b.id;
}
}
int n;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i].t;
a[i].id=i;
}
sort(a+1,a+n+1,cmp);
double ans=0,sum=0;
for(int i=1;i<=n;i++){
ans+=sum;
sum+=a[i].t;
}
for(int i=1;i<=n;i++){
cout<<a[i].id<<" ";
}
cout<<endl;
cout<<fixed<<setprecision(2)<<ans*1.00/n;
return 0;
}