社区讨论
实在想不出优化方法了
P6823「EZEC-4」paulzrm Loves Array参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mi8z6p9v
- 此快照首次捕获于
- 2025/11/21 22:48 4 个月前
- 此快照最后确认于
- 2025/11/22 09:23 3 个月前
:
CPP#include<bits/stdc++.h>
using namespace std;
int a[1000005];
bool cmp(int a, int b) {
return a > b;
}
inline int read() {
int x = 0, f = 1;
char c = getchar();
while (c < '0' || c > '9') {
if (c == '-') f = -1;
c = getchar();
}
while (c >= '0' && c <= '9') {
x = x * 10 + (c - '0');
c = getchar();
}
return x * f;
}
inline void write(int x) {
if (x < 0) {
putchar('-');
x = -x;
}
if (x > 9) write(x/10);
putchar(x%10+'0');
}
int main() {
int n, m;
n = read();
m = read();
int tot = 0;
for (int i = 1; i <= n; i++) {
tot++;
a[tot] = i;
}
while (m--) {
int x;
cin >> x;
if (x == 1) {
sort(a+1,a+n+1);
}
if (x == 2) {
sort(a+1,a+n+1,cmp);
}
if (x == 3) {
int p, q;
cin >> p >> q;
swap(a[p],a[q]);
}
if (x == 4) {
for (int i = n; i >= n/2+1; i--) {
swap(a[i],a[n-i+1]);
}
}
}
for (int i = 1; i <= n; i++) {
write(a[i]);
putchar(' ');
}
return 0;
}
这道题貌似只要一排序就必定,但是也想不到什么更好的优化方法了,曾思考过字符串优化,但是貌似也不行,更加复杂。
故只能挂
回复
共 1 条回复,欢迎继续交流。
正在加载回复...