专栏文章
题解:P13510 [KOI 2025 #1] 远方的卡片
P13510题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mioni247
- 此快照首次捕获于
- 2025/12/02 22:05 3 个月前
- 此快照最后确认于
- 2025/12/02 22:05 3 个月前
一道水题
首先,读入n和a[i]
CPPcin >> n;
for(int i = 1;i <= 2*n;i++){
cin >> a[i];
}
接着,从数字1到n开始枚举,定义l为第一个数字 k ,r为第二个数字k,在从1到2*n中,找到l,r。挑选l和r中间的数字的数量(r-l-1),maxn统计最大值,最后输出便可以了
CPPfor(int i = 1;i <= n;i++){
bool f = 0;
int l = 0,r = 0;
for(int j = 1;j <= 2*n;j++){
if(a[j] == i && f == 0){
l = j;
f = 1;
}else if(a[j] == i && f){
r = j;
break;
}
}
maxn = max(maxn,r-l-1);
}
code
CPP#include<bits/stdc++.h>
using namespace std;
int n,maxn = -1;
int a[4004];
int main(){
cin >> n;
for(int i = 1;i <= 2*n;i++){
cin >> a[i];
}
for(int i = 1;i <= n;i++){
bool f = 0;
int l = 0,r = 0;
for(int j = 1;j <= 2*n;j++){
if(a[j] == i && f == 0){
l = j;
f = 1;
}else if(a[j] == i && f){
r = j;
break;
}
}
maxn = max(maxn,r-l-1);
}
cout << maxn;
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...