QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#577514 | #9134. Building a Fence | generals# | WA | 4ms | 3820kb | C++20 | 1.6kb | 2024-09-20 12:10:23 | 2024-09-20 12:10:23 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
#define mod 998244353ll
#define pii pair<int,int>
#define fi first
#define se second
#define mems(x,y) memset(x,y,sizeof(x))
#define pb push_back
#define db double
using namespace std;
const int maxn=200010;
const int inf=1e18;
inline int read(){
int x=0,f=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){x=(x<<3)+(x<<1)+(ch-48);ch=getchar();}
return x*f;
}
bool Mbe;
int n,m,s,ans;
int id[5],a[5];
void sovle(){
int res=0;
for(int i=0;i<2;i++){
int d=a[i]/s;
a[i]-=d*s;res+=d;
if(a[3]>=s-a[i])++res,a[3]-=s-a[i];
else return ;
}
res+=(a[2]+a[3]+s-1)/s;
ans=min(ans,res);
}
void work(){
n=read();m=read();s=read();
id[0]=0,id[1]=1,id[2]=2,id[3]=3;
ans=inf;
do{
for(int i=0;i<4;i++){
if(id[i]<2)a[i]=n;
else a[i]=m;
// cout<<a[i]<<" ";
}
// cout<<"\n";
int res=0;
for(int i=0;i<4;i++){
// cout<<i<<" "<<a[i]<<"\n";
int d=a[i]/s;
a[i]-=d*s;res+=d;
if(a[i]){
if(i<=3&&a[i+1]>=s-a[i])a[i+1]-=s-a[i],++res;
else ++res;
}
}
// for(int i=0;i<4;i++)cout<<id[i]<<" ";cout<<"\n";
// cout<<res<<"\n";
ans=min(ans,res);
}while(next_permutation(id,id+4));
a[0]=n,a[1]=n,a[2]=m,a[3]=m;
sovle();
a[0]=m,a[1]=m,a[2]=n,a[3]=n;
sovle();
printf("%lld\n",ans);
}
// \
444
bool Med;
int T;
signed main(){
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
// ios::sync_with_stdio(0);
// cin.tie(0);cout.tie(0);
// cerr<<(&Mbe-&Med)/1048576.0<<" MB\n";
T=read();
while(T--)work();
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3820kb
input:
7 7 9 4 1 1 2 1 1 4 4 6 2 3 3 5 10 6 4 1 11 5
output:
8 2 4 10 4 8 5
result:
ok 7 numbers
Test #2:
score: -100
Wrong Answer
time: 4ms
memory: 3796kb
input:
8000 1 1 1 1 1 2 1 1 3 1 1 4 1 1 5 1 1 6 1 1 7 1 1 8 1 1 9 1 1 10 1 1 11 1 1 12 1 1 13 1 1 14 1 1 15 1 1 16 1 1 17 1 1 18 1 1 19 1 1 20 1 2 1 1 2 2 1 2 3 1 2 4 1 2 5 1 2 6 1 2 7 1 2 8 1 2 9 1 2 10 1 2 11 1 2 12 1 2 13 1 2 14 1 2 15 1 2 16 1 2 17 1 2 18 1 2 19 1 2 20 1 3 1 1 3 2 1 3 3 1 3 4 1 3 5 1 3...
output:
4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 3 2 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 8 4 4 2 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 10 5 4 4 2 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 12 6 4 3 4 2 4 4 4 3 4 4 4 4 4 4 4 4 4 4 14 7 5 4 4 4 2 4 4 4 4 3 4 4 4 4 4 4 4 4 16 8 6 4 4 4 4 2 4 4 4 4 4 3 4 4 4 4 4 4 18 9 6 5 4 3 4 4...
result:
wrong answer 907th numbers differ - expected: '4', found: '3'