社区讨论
玄关
B3613图的存储与出边的排序参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mjsnbso2
- 此快照首次捕获于
- 2025/12/30 21:51 2 个月前
- 此快照最后确认于
- 2026/01/02 20:05 2 个月前
为什么同样的代码,用priority_queue过不了,用set就过了?
TLE代码:
CPP#include<bits/stdc++.h>
using namespace std;
#define getchar getchar_unlocked
int n,m;
inline int read(){
int a = 0;
int sign = 1;char ch = getchar();
while(ch < '0' || ch > '9'){
if(ch == '-'){sign = -1;}
ch = getchar();
}
while(ch >= '0' && ch <= '9'){a = 10*a + ch - '0';ch = getchar();}
a *= sign;
return a;
}
inline void write(int x){
if(x < 0){putchar('-');x = -x;}
if(x >= 10)write(x/10);
putchar(x%10+'0');
}
int main(){
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
int t;t = read();
// write(t);return 0;
while(t--){
n = read();m = read();
priority_queue<int,vector<int>,greater<int>>a[500005];
for(int i = 1;i <= m;i++){
int u,v;u = read();v = read();
a[u].push(v);
}
for(int i = 1;i <= n;i++){
while(a[i].size()){
write(a[i].top());putchar(' ');
a[i].pop();
}
putchar('\n');
}
}
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...