为什么下面32,上面40
  • 板块P1801 黑匣子
  • 楼主kun_lei
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/11 20:43
  • 上次更新2024/7/11 20:49:33
查看原帖
为什么下面32,上面40
948032
kun_lei楼主2024/7/11 20:43
1.
#include<bits/stdc++.h>
using namespace std;
const int N=1e7+100;
int a[N],u[N],c[N];;
int m,n;
int sum=1;
int ans=0;
int op=0;
int cnt=0;
int main(){
	cin>>m>>n;
	for(int i=1;i<=m;i++) cin>>a[i];
	for(int i=1;i<=n;i++) cin>>u[i];
	for(int i=1;i<=n;i++){ 
		for(int j=1;j<=op;j++) c[j]=0; 
		int o=u[i];
		op=0;
		cnt=0;
		for(int j=1;j<=o;j++){
			op++;
			c[op]=a[j];
		}
		sort(c+1,c+op+1);
		for(int j=1;j<=op;j++){
			if(a[j]!=a[j]+1){
				cnt++;
			}
			if(cnt==i){
				cout<<c[cnt]<<"\n";
			}
		}
	}
	return 0; 
}
2.
#include<bits/stdc++.h>
using namespace std;
const int N=1e7+100;
int a[N],u[N],c[N];;
int m,n;
int sum=1;
int ans=0;
int op=0;
int cnt=0;
int main(){
	cin>>m>>n;
	for(int i=1;i<=m;i++) cin>>a[i];
	for(int i=1;i<=n;i++) cin>>u[i];
	for(int i=1;i<=n;i++){ 
		for(int j=1;j<=op;j++) c[j]=0; 
		int o=u[i];
		op=0;
		cnt=0;
		for(int j=1;j<=o;j++){
			op++;
			c[op]=a[j];
		}
		sort(c+1,c+op+1);
		for(int j=1;j<=op;j++){
			if(a[j]!=a[j+1]){
				cnt++;
			}
			if(cnt==i){
				cout<<c[cnt]<<"\n";
			}
		}
	}
	return 0; 
}
2024/7/11 20:43
加载中...