QOJ.ac
QOJ
The 2nd Universal Cup Finals is coming! Check out our event page, schedule, and competition rules!
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#536709 | #4561. Catfish Farm | Aldk# | 0 | 3ms | 16420kb | C++20 | 3.0kb | 2024-08-29 15:55:32 | 2024-08-29 15:55:32 |
Judging History
answer
#include "fish.h"
#include<bits/stdc++.h>
#define pb push_back
#define pf push_front
//#define mp make_pair
#define F first
#define S second
#define ff first
#define ss second
#define str string
#define ll long long
#define ull unsigned ll
#define ld long double
#define pll pair<ll,ll>
#define plll pair<ll,pll>
#define pllll pair<pll,pll>
#define pld pair<ld,ld>
#define vl vector<ll>
#define vll vector<pll>
#define vlll vector<plll>
#define vllll vector<pllll>
#define vb vector<bool>
#define sz size()
#define fr front()
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define bk back();
//#pragma GCC target( "sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
//#pragma GCC optimize("Ofast,unroll-loops,fast-math,O3")
using namespace std;
const ld pi=acos(-1.0);
const ll e5=1e5;
const ll e6=1e6;
const ll e9=1e9;
const ll inf=1e18;
const ll mod=1e9+7;
const ll mod2=998244353;
const ll MOD=106710087877475399;
const ll N=3e2+10;
ll bpm(ll x,ll y,ll m){if(y==0)return 1%m;if(y==1)return x%m;ll p=bpm(x,y/2,m);
if(y%2==0)return p*p%m;else return p*p%m*x%m;}
ll bp(ll x,ll y){if(y==0)return 1;if(y==1)return x;ll p=bp(x,y/2);
if(y%2==0)return p*p;else return p*p*x;}
ll s[N][N],dp[N][N][N],pr[N][N],m1[N][N][9],m2[N][N][9];
long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y,std::vector<int> W){
for(ll i=0;i<M;i++){
s[X[i]][Y[i]+1]+=W[i];
}
for(ll i=0;i<N;i++){
pr[i][0]=0;
for(ll j=1;j<=N;j++) pr[i][j]=pr[i][j-1]+s[i][j];
}
for(ll i=0;i<=N;i++){
for(ll j=0;j<=N;j++){
if(i==0) dp[0][i][j]=pr[1][i];
else dp[0][i][j]=-inf;
}
}
ll ans=0;
for(ll p=1;p<N;p++){
for(ll b=0;b<9;b++){
for(ll i=0;i+(1<<b)-1<=N;i++){
for(ll j=0;j<=N;j++){
if(b==0) m1[i][j][b]=dp[p-1][i][j], m2[i][j][b]=dp[p-1][i][j]-pr[p-1][i];
else{
m1[i][j][b]=max(m1[i][j][b-1],m1[i+(1<<(b-1))][j][b-1]);
m2[i][j][b]=max(m2[i][j][b-1],m2[i+(1<<(b-1))][j][b-1]);
}
}
}
}
for(ll j=0;j<=N;j++){
for(ll k=0;k<=N;k++){
ll x=pr[p-1][k]-pr[p][min(j,k)]+pr[p+1][k];
ll y=-inf,lg=31-__builtin_clz(j+1);
y=max(y, max(m1[0][j][lg],m1[j-(1<<lg)+1][j][lg]) - pr[p-1][min(j,k)]);
if(j<=k){
lg=31-__builtin_clz(k-j+1);
y=max(y, max(m2[j][j][lg],m2[k-(1<<lg)+1][j][lg]));
}
lg=31-__builtin_clz(N-max(j,k)+1);
y=max(y, max(m1[max(j,k)][j][lg],m1[N-(1<<lg)+1][j][lg]) - pr[p-1][k]);
dp[p][j][k]=x+y;
if(p==N-1) ans=max(ans,dp[p][j][k]);
}
}
}
return ans;
}
// dp[p][j][k]=max: dp[p-1][i][j] + pr[p-1][k]-pr[p-1][min(max(i,j),k)] - pr[p][min(j,k)] + pr[p+1][k]
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 0
Runtime Error
Test #1:
score: 0
Runtime Error
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 90000 80699 0 10792 55091480 0 36762 389250726 0 79267 706445371 0 76952 290301137 0 13444 69711795 0 68980 66221400 0 1695 703252611 0 36628 632571604 0 87676 264578012 0 79496 397448339 0 57929 447544332 0 35453 355374818 0 62449 686423696 0 45614 667165709...
output:
Unauthorized output
result:
Subtask #2:
score: 0
Runtime Error
Test #7:
score: 6
Accepted
time: 0ms
memory: 12008kb
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 3 2 0 0 1 1 1 1
output:
938f2698235a9ff1d1d91e23381b68bec7bed102 OK 2
result:
ok 3 lines
Test #8:
score: 0
Runtime Error
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 90000 161862 0 56823 293232472 0 28967 124369573 1 8799 138712011 0 87115 743135614 1 56429 262092699 0 61318 597172732 0 39127 477101342 1 44938 277680401 1 79037 997527330 1 88113 13289754 0 29715 35249311 0 50637 709319782 1 20760 845594381 1 80662 6299890...
output:
Unauthorized output
result:
Subtask #3:
score: 0
Runtime Error
Test #20:
score: 0
Runtime Error
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 100000 1 0 0 10082010
output:
Unauthorized output
result:
Subtask #4:
score: 0
Wrong Answer
Test #28:
score: 14
Accepted
time: 2ms
memory: 14096kb
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 4 3 2 2 1 0 0 1 1 1 1
output:
938f2698235a9ff1d1d91e23381b68bec7bed102 OK 3
result:
ok 3 lines
Test #29:
score: 14
Accepted
time: 3ms
memory: 16420kb
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 8 7 5 5 1 4 4 1 6 6 1 3 3 1 0 0 1 2 2 1 1 1 1
output:
938f2698235a9ff1d1d91e23381b68bec7bed102 OK 7
result:
ok 3 lines
Test #30:
score: 14
Accepted
time: 0ms
memory: 10048kb
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 3 2 0 0 1 1 1 1
output:
938f2698235a9ff1d1d91e23381b68bec7bed102 OK 2
result:
ok 3 lines
Test #31:
score: 0
Wrong Answer
time: 2ms
memory: 14048kb
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 3 2 2 0 1 1 1 1
output:
938f2698235a9ff1d1d91e23381b68bec7bed102 OK 1
result:
wrong answer 3rd lines differ - expected: '2', found: '1'
Subtask #5:
score: 0
Skipped
Dependency #4:
0%
Subtask #6:
score: 0
Skipped
Dependency #5:
0%
Subtask #7:
score: 0
Runtime Error
Test #60:
score: 0
Runtime Error
input:
f785163bfcb92ce6ac387bba5d2f29a0e0f37f19 100000 99999 31026 31026 1 42940 42940 1 69303 69303 1 90350 90350 1 77507 77507 1 87126 87126 1 17988 17988 1 5146 5146 1 63023 63023 1 27776 27776 1 6136 6136 1 82557 82557 1 24904 24904 1 21667 21667 1 67271 67271 1 80294 80294 1 81145 81145 1 47144 47144 ...
output:
Unauthorized output
result:
Subtask #8:
score: 0
Skipped
Dependency #1:
0%