专栏文章

东塘J1R-期中测试-404

个人记录参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@minayakg
此快照首次捕获于
2025/12/01 23:26
3 个月前
此快照最后确认于
2025/12/01 23:26
3 个月前
查看原文

B3649 [语言月赛202208] 大小比较

思路

先定两个变量a,b,输入a和b在来一个if判断:if(a<=b){cout<<"YE5";return 0;}如果不是,就在在外面cout<<"N0";

代码

CPP
#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。

代码

CPP
#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);

代码

CPP
#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];

代码

CPP
#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; } 最后输出。

代码

CPP
#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;
}


评论

0 条评论,欢迎与作者交流。

正在加载评论...