社区讨论
啊?
学术版参与者 3已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @mhpi28xe
- 此快照首次捕获于
- 2025/11/08 07:41 3 个月前
- 此快照最后确认于
- 2025/11/08 07:41 3 个月前
S组T1爆零了
本以为是freopen的问题,结果并不是
注释后交到洛谷测评,14TLE 6RE
本地测试样例全过
全机房的人都尽力了,玄关
CPP本以为是freopen的问题,结果并不是
注释后交到洛谷测评,14TLE 6RE
本地测试样例全过
全机房的人都尽力了,玄关
#include<bits/stdc++.h>
#define ll long long
#define N (int)1e5+5
using namespace std;
ll m,n;
struct node{
ll x[4];
int fstv(){
int ret=1;
for(int i=1;i<=3;i++){
if(x[i]>x[ret]){
ret=i;
}
}
return ret;
}
int scdv(){
int mx=1,mn=1;
for(int i=1;i<=3;i++){
if(x[i]>x[mx]){
mx=i;
}
if(x[i]<x[mn]){
mn=i;
}
}
if(mx==mn)return 1;
return 6-mx-mn;
}
int cost(){
return x[fstv()]-x[scdv()];
}
};
node a[N];
struct pers{
int x;
pers(int _x):x(_x){};
bool operator <(const pers &_t)const{
return a[x].cost()>a[_t.x].cost();
}
};
void solve(){
priority_queue<pers>q[3];
cin>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=3;j++){
cin>>a[i].x[j];
}
q[a[i].fstv()].push(pers(i));
}
for(int i=1;i<=3;i++){
while(q[i].size()>n/2){
int x=q[i].top().x;
q[i].pop();
q[a[x].scdv()].push(pers(x));
}
}
ll ans=0;
for(int i=1;i<=3;i++){
while(!q[i].empty()){
int x=q[i].top().x;
ans+=a[x].x[i];
q[i].pop();
}
}
cout<<ans<<'\n';
return ;
}
int main(){
// freopen("club.in","r",stdin);
// freopen("club.out","w",stdout);
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>m;
while(m--){
solve();
}
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...