QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#515916 | #2346. Miniature Golf | Yanagi_Origami | AC ✓ | 746ms | 4384kb | C++14 | 949b | 2024-08-12 11:26:49 | 2024-08-12 11:26:49 |
Judging History
answer
#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=a;i<=b;i++)
typedef long long ll;
using namespace std;
int n,m;
int a[505][55];
ll sum[505];
int main(){
cin>>n>>m;
rep(i,1,n) rep(j,1,m) cin>>a[i][j];
rep(i,1,n) rep(j,1,m) sum[i]+=a[i][j];
rep(i,1,n) sort(a[i]+1,a[i]+m+1,greater<int>());
rep(i,1,n){
vector<pair<ll,int>>b;
rep(j,1,n){
ll s1=sum[i],s2=sum[j],lim=1e9;
for(int ki=1,kj=1;ki<m||kj<m;a[i][ki]>a[j][kj]?ki++:kj++){
bool old =(s2<=s1);
ll v=max(a[i][ki], a[j][kj]);
s1-=(lim-v)*ki,s2-=(lim-v)*kj;
lim=v;
if(!old&&s2<=s1)
b.push_back(make_pair(lim+(s1-s2)/(kj-ki),1));
else if(old&&s2>s1)
b.push_back(make_pair(lim+(s2-s1-1)/(ki-kj),-1));
}
}
sort(b.begin(), b.end(), greater<pair<int, int>>());
int res=0, cur=0;
rep(j,1,n) res+=sum[i]>=sum[j];
cur=res;
for(auto w:b) cur+=w.second, res=min(res,cur);
cout<<res<<'\n';
}
return 0;
}
Details
Test #1:
score: 100
Accepted
time: 0ms
memory: 3612kb
Test #2:
score: 0
Accepted
time: 0ms
memory: 3644kb
Test #3:
score: 0
Accepted
time: 0ms
memory: 3544kb
Test #4:
score: 0
Accepted
time: 0ms
memory: 3576kb
Test #5:
score: 0
Accepted
time: 0ms
memory: 3836kb
Test #6:
score: 0
Accepted
time: 0ms
memory: 3488kb
Test #7:
score: 0
Accepted
time: 0ms
memory: 3604kb
Test #8:
score: 0
Accepted
time: 1ms
memory: 3516kb
Test #9:
score: 0
Accepted
time: 2ms
memory: 3612kb
Test #10:
score: 0
Accepted
time: 0ms
memory: 3548kb
Test #11:
score: 0
Accepted
time: 1ms
memory: 3608kb
Test #12:
score: 0
Accepted
time: 3ms
memory: 3504kb
Test #13:
score: 0
Accepted
time: 0ms
memory: 3540kb
Test #14:
score: 0
Accepted
time: 1ms
memory: 3620kb
Test #15:
score: 0
Accepted
time: 2ms
memory: 3624kb
Test #16:
score: 0
Accepted
time: 64ms
memory: 3684kb
Test #17:
score: 0
Accepted
time: 746ms
memory: 4032kb
Test #18:
score: 0
Accepted
time: 701ms
memory: 4096kb
Test #19:
score: 0
Accepted
time: 602ms
memory: 4052kb
Test #20:
score: 0
Accepted
time: 238ms
memory: 4224kb
Test #21:
score: 0
Accepted
time: 239ms
memory: 4384kb
Test #22:
score: 0
Accepted
time: 255ms
memory: 4224kb
Test #23:
score: 0
Accepted
time: 121ms
memory: 3608kb
Test #24:
score: 0
Accepted
time: 125ms
memory: 3964kb
Test #25:
score: 0
Accepted
time: 121ms
memory: 3740kb
Test #26:
score: 0
Accepted
time: 121ms
memory: 3668kb
Test #27:
score: 0
Accepted
time: 121ms
memory: 3964kb