QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#876830#5100. 卡牌游戏nullptr_qwqCompile Error//C++175.0kb2025-01-31 13:41:232025-01-31 13:41:27

Judging History

This is the latest submission verdict.

  • [2025-01-31 13:41:27]
  • Judged
  • [2025-01-31 13:41:23]
  • Submitted

answer

// 私は猫です

#pragma GCC optimize(3)
#pragma GCC target("avx")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("inline")
#pragma GCC optimize("-fgcse")
#pragma GCC optimize("-fgcse-lm")
#pragma GCC optimize("-fipa-sra")
#pragma GCC optimize("-ftree-pre")
#pragma GCC optimize("-ftree-vrp")
#pragma GCC optimize("-fpeephole2")
#pragma GCC optimize("-ffast-math")
#pragma GCC optimize("-fsched-spec")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-falign-jumps")
#pragma GCC optimize("-falign-loops")
#pragma GCC optimize("-falign-labels")
#pragma GCC optimize("-fdevirtualize")
#pragma GCC optimize("-fcaller-saves")
#pragma GCC optimize("-fcrossjumping")
#pragma GCC optimize("-fthread-jumps")
#pragma GCC optimize("-funroll-loops")
#pragma GCC optimize("-fwhole-program")
#pragma GCC optimize("-freorder-blocks")
#pragma GCC optimize("-fschedule-insns")
#pragma GCC optimize("inline-functions")
#pragma GCC optimize("-ftree-tail-merge")
#pragma GCC optimize("-fschedule-insns2")
#pragma GCC optimize("-fstrict-aliasing")
#pragma GCC optimize("-fstrict-overflow")
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-skip-blocks")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("-funsafe-loop-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")
#pragma GCC optimize(2)
#include<bits/stdc++.h>
#define ull unsigned long long
#define ll long long
#define pb push_back
#define mkp make_pair
#define fi first
#define se second
#define inf 1000000000
#define infll 1000000000000000000ll
#define pii pair<int,int>
#define rep(i,a,b,c) for(int i=(a);i<=(b);i+=(c))
#define per(i,a,b,c) for(int i=(a);i>=(b);i-=(c))
#define F(i,a,b) for(int i=a,i##end=b;i<=i##end;i++)
#define dF(i,a,b) for(int i=a,i##end=b;i>=i##end;i--)
#define cmh(sjy) while(sjy--)
#define lowbit(x) ((x)&(-(x)))
#define HH printf("\n")
#define eb emplace_back
#define poly vector<int>
#define SZ(x) ((int)x.size())
using namespace std;
template<typename T>inline void chkmax(T &x,const T &y){ x=std::max(x,y); }
template<typename T>inline void chkmin(T &x,const T &y){ x=std::min(x,y); }
const int mod=998244353,maxn=500005,MR=1005;
int n,k,typ,testid,gc[MR][MR],a[maxn],B;
ll f[maxn],g[maxn];
int pre[maxn],nxt[maxn],lst[maxn];
ll tmp[maxn];
inline int gcd(int x,int y){
	if(!x||!y)return x^y;
	const int a=__builtin_ctz(x),b=__builtin_ctz(y),c=min(a,b);
	for(x>>=a,y>>=b;x>0;x>>=__builtin_ctz(x)){ const int d=x-y; y=std::min(x,y),x=std::abs(d); }
	return y<<c;
}
inline int calc(int x,int y){
	if(x>y)swap(x,y);
	const ll t=1ll*x*y/gc[x][y%x];
	return k/t*t;
}
ll st[maxn][21];
void solve(){
	cin>>n>>k>>typ>>testid,B=sqrt(k);
	F(i,0,B)F(j,0,B)gc[i][j]=gcd(i,j);
	F(i,1,n)cin>>a[i];
	F(i,1,n)pre[i]=(a[i-1]<=B)?(i-1):pre[i-1];
	dF(i,n,1)nxt[i]=(a[i+1]<=B)?(i+1):nxt[i+1];
	vector<ll>mx(k+5,-infll);
	ll ans=0;
	F(i,1,n){
		if(a[i]>B){
			rep(j,0,k,a[i])chkmax(f[i],mx[j]);
			for(int _=1,u=pre[i];a[u]&&_<=3;++_,u=pre[u])chkmax(f[i],f[u]+calc(a[u],a[i]));
			rep(j,0,k,a[i])chkmax(mx[j],f[i]+j);
		}
		for(int _=1,u=nxt[i];a[u]&&_<=3;++_,u=nxt[u])chkmax(f[u],f[i]+calc(a[i],a[u]));
		chkmax(ans,f[i]);
	} cout<<ans<<' ';
	if(!typ)return;
	fill(mx.begin(),mx.end(),-infll);
	dF(i,n,1){
		if(a[i]>B){
			rep(j,0,k,a[i])chkmax(g[i],mx[j]);
			for(int _=1,u=nxt[i];a[u]&&_<=3;++_,u=nxt[u])chkmax(g[i],g[u]+calc(a[u],a[i]));
			rep(j,0,k,a[i])chkmax(mx[j],g[i]+j);
		}
		for(int _=1,u=pre[i];a[u]&&_<=3;++_,u=pre[u])chkmax(g[u],g[i]+calc(a[i],a[u]));
	}
	auto upd=[&](int l,int r,ll v){
		if(l>r)return; const int t=__lg(r-l+1);
		chkmax(st[l][t],v),chkmax(st[r-(1<<t)+1][t],v);
	};
	F(i,1,n)for(int _=1,u=nxt[i];a[u]&&_<=4;++_,u=nxt[u])upd(i+1,u-1,f[i]+g[u]+calc(a[i],a[u]));
	F(i,1,n)for(int _=1,u=pre[i];a[u]&&_<=4;++_,u=pre[u])upd(u+1,i-1,g[i]+f[u]+calc(a[i],a[u]));
	F(i,1,n)if(a[i]>B)rep(j,0,k,a[i]){
		if(lst[j])chkmax(st[lst[j]][0],tmp[j]+g[i]),tmp[j]=f[lst[j]]+j,upd(lst[j]+1,i-1,tmp[j]+g[i]);
		lst[j]=i;
	}
	dF(j,19,1)F(i,1,n-(1<<j)+1)chkmax(st[i][j-1],st[i][j]),chkmax(st[i+(1<<(j-1))][j-1],st[i][j]);
	ll res=0;
	vector<ll>pmx(n+5,-infll),smx(n+5,-infll);
	F(i,1,n)pmx[i]=max(pmx[i-1],f[i]);
	dF(i,n,1)smx[i]=max(smx[i+1],g[i]);
	F(i,1,n)res^=(1ll*i*max(pmx[i-1],max(smx[i+1],st[i][0])));
	cout<<res;
}
signed main(){
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
	int zsy=1;
	F(____,1,zsy)solve();
}

详细

answer.code:24:39: warning: bad option ‘-fwhole-program’ to pragma ‘optimize’ [-Wpragmas]
   24 | #pragma GCC optimize("-fwhole-program")
      |                                       ^
answer.code:31:41: warning: bad option ‘-fstrict-overflow’ to pragma ‘optimize’ [-Wpragmas]
   31 | #pragma GCC optimize("-fstrict-overflow")
      |                                         ^
answer.code:33:41: warning: bad option ‘-fcse-skip-blocks’ to pragma ‘optimize’ [-Wpragmas]
   33 | #pragma GCC optimize("-fcse-skip-blocks")
      |                                         ^
answer.code:47:51: warning: bad option ‘-funsafe-loop-optimizations’ to pragma ‘optimize’ [-Wpragmas]
   47 | #pragma GCC optimize("-funsafe-loop-optimizations")
      |                                                   ^
answer.code:72:55: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
   72 | template<typename T>inline void chkmax(T &x,const T &y){ x=std::max(x,y); }
      |                                                       ^
answer.code:72:55: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:72:55: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:72:55: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code:73:55: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
   73 | template<typename T>inline void chkmin(T &x,const T &y){ x=std::min(x,y); }
      |                                                       ^
answer.code:73:55: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:73:55: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:73:55: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code:79:27: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
   79 | inline int gcd(int x,int y){
      |                           ^
answer.code:79:27: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:79:27: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:79:27: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code:85:28: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
   85 | inline int calc(int x,int y){
      |                            ^
answer.code:85:28: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:85:28: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:85:28: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code:91:12: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
   91 | void solve(){
      |            ^
answer.code:91:12: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:91:12: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:91:12: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code: In function ‘void solve()’:
answer.code:118:38: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
  118 |         auto upd=[&](int l,int r,ll v){
      |                                      ^
answer.code:118:38: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:118:38: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:118:38: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
answer.code: At global scope:
answer.code:136:13: warning: bad option ‘-fwhole-program’ to attribute ‘optimize’ [-Wattributes]
  136 | signed main(){
      |             ^
answer.code:136:13: warning: bad option ‘-fstrict-overflow’ to attribute ‘optimize’ [-Wattributes]
answer.code:136:13: warning: bad option ‘-fcse-skip-blocks’ to attribute ‘optimize’ [-Wattributes]
answer.code:136:13: warning: bad option ‘-funsafe-loop-optimizations’ to attribute ‘optimize’ [-Wattributes]
In file included from /usr/include/c++/14/string:43,
                 from /usr/include/c++/14/bitset:52,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:52,
                 from answer.code:51:
/usr/include/c++/14/bits/allocator.h: In destructor ‘std::_Vector_base<long long int, std::allocator<long long int> >::_Vector_impl::~_Vector_impl()’:
/usr/include/c++/14/bits/allocator.h:182:7: error: inlining failed in call to ‘always_inline’ ‘std::allocator< <template-parameter-1-1> >::~allocator() noexcept [with _Tp = long long int]’: target specific option mismatch
  182 |       ~allocator() _GLIBCXX_NOTHROW { }
      |       ^
In file included from /usr/include/c++/14/ve...