Submission #50229845


Source Code Expand

// LUOGU_RID: 146743310
#include<bits/stdc++.h>
#define ll long long
#define mxn 200003
#define md 1000000007
#define pb push_back
#define mkp make_pair
#define ld long double
#define umap unordered_map
#define rep(i,a,b) for(int i=a;i<=b;++i)
#define rept(i,a,b) for(int i=a;i<b;++i)
#define drep(i,a,b) for(int i=a;i>=b;--i)
#define pq priority_queue
using namespace std;
inline ll gcd(ll x,ll y){
	while(y^=x^=y^=x%=y);
	return x;
}
int n,m,ans,a[18],d[1214830];
ll s,g,f[18];
queue<int>q;
ll calc(){
	ll ans=0;
	rep(i,1,n)ans+=f[i-1]*a[i];
	return ans;
}
int get(ll x){
	int ans=0;
	rep(i,1,n){
		ans+=x%(i*2);
		x/=i*2;
	}
	return ans;
}
signed main(){
	cin>>n>>m;
	f[0]=1;
	rep(i,1,n)f[i]=f[i-1]*2*i;
	rep(i,1,n)cin>>a[i];
	s=calc(),g=f[n]-1;
	rep(i,1,m){
		rep(j,1,n)cin>>a[j];
		g=gcd(g,calc());
	}
	if(g>1214827){
		ans=1e9;
		for(ll i=s%g==0?g:s%g;i<f[n];i+=g){
			ans=min(ans,get(i));
		}
		cout<<ans;
	}else{
		memset(d,-1,sizeof(d));
		rept(i,0,n){
			d[f[i]%g]=1;
			q.push(f[i]%g);
		}
		while(q.size()){
			int x=q.front();q.pop();
			rept(i,0,n){
				int y=(x+f[i])%g;
				if(d[y]==-1){
					d[y]=d[x]+1;
					q.push(y);
				}
			}
		}
		cout<<d[s%g];
	}
	return 0;
}

Submission Info

Submission Time
Task F - Die Siedler
User zifanwang
Language C++ 20 (gcc 12.2)
Score 900
Code Size 1252 Byte
Status AC
Exec Time 65 ms
Memory 9444 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 900 / 900
Status
AC × 3
AC × 72
Set Name Test Cases
Sample sample.txt, sample_2.txt, sample_3.txt
All 00max_12_1214827.txt, 00max_12_1615037.txt, 00max_12_70219.txt, 0max_12_1214827.txt, 0max_12_1615037.txt, 0max_12_70219.txt, any_2_1.txt, any_3_1.txt, any_4_1.txt, any_5_349.txt, any_6_781.txt, any_9_199.txt, any_9_49139.txt, case_10_1.txt, case_10_19.txt, case_10_757.txt, case_11_1993892839.txt, case_11_23.txt, case_11_41.txt, case_11_86690993.txt, case_12_1201463903.txt, case_12_1201463903_2.txt, case_12_1615037.txt, case_12_1983812491.txt, case_12_1983812491_2.txt, case_12_22747.txt, case_12_23.txt, case_12_23_2.txt, case_12_27633669769.txt, case_12_27941021.txt, case_12_27941021_2.txt, case_12_3053.txt, case_12_3708866831.txt, case_12_52237561.txt, case_12_529.txt, case_12_642643483.txt, case_12_70219.txt, case_12_71.txt, case_12_85303937113.txt, case_12_85303937113_2.txt, case_12_989.txt, case_12_989_2.txt, case_13_1.txt, case_14_6421.txt, case_15_1382253990020129.txt, case_15_16653662530363.txt, case_15_2573.txt, case_15_31.txt, case_15_83.txt, case_16_1.txt, case_16_1028654132108003.txt, case_16_1333.txt, case_16_31.txt, case_16_31888278095348093.txt, case_16_43.txt, case_16_44232127680644129.txt, case_8_1.txt, full_10_3715891199.txt, full_16_1371195958099967999.txt, full_2_7.txt, max_13_51011754393599.txt, max_16_1371195958099967999.txt, max_5_3839.txt, sample.txt, sample_2.txt, sample_3.txt, small_m_14_6421.txt, small_m_15_516263538441253.txt, zero_11_41.txt, zero_14_1.txt, zero_15_1382253990020129.txt, zero_16_1028654132108003.txt
Case Name Status Exec Time Memory
00max_12_1214827.txt AC 65 ms 9404 KiB
00max_12_1615037.txt AC 43 ms 3496 KiB
00max_12_70219.txt AC 6 ms 8328 KiB
0max_12_1214827.txt AC 65 ms 9444 KiB
0max_12_1615037.txt AC 43 ms 3484 KiB
0max_12_70219.txt AC 6 ms 8516 KiB
any_2_1.txt AC 2 ms 8416 KiB
any_3_1.txt AC 2 ms 8220 KiB
any_4_1.txt AC 2 ms 8220 KiB
any_5_349.txt AC 2 ms 8216 KiB
any_6_781.txt AC 2 ms 8228 KiB
any_9_199.txt AC 2 ms 8228 KiB
any_9_49139.txt AC 4 ms 8228 KiB
case_10_1.txt AC 2 ms 8420 KiB
case_10_19.txt AC 2 ms 8220 KiB
case_10_757.txt AC 2 ms 8152 KiB
case_11_1993892839.txt AC 1 ms 3540 KiB
case_11_23.txt AC 2 ms 8156 KiB
case_11_41.txt AC 3 ms 8220 KiB
case_11_86690993.txt AC 1 ms 3536 KiB
case_12_1201463903.txt AC 1 ms 3680 KiB
case_12_1201463903_2.txt AC 1 ms 3492 KiB
case_12_1615037.txt AC 43 ms 3540 KiB
case_12_1983812491.txt AC 1 ms 3480 KiB
case_12_1983812491_2.txt AC 1 ms 3540 KiB
case_12_22747.txt AC 4 ms 8248 KiB
case_12_23.txt AC 3 ms 8224 KiB
case_12_23_2.txt AC 3 ms 8364 KiB
case_12_27633669769.txt AC 1 ms 3488 KiB
case_12_27941021.txt AC 3 ms 3616 KiB
case_12_27941021_2.txt AC 3 ms 3496 KiB
case_12_3053.txt AC 3 ms 8420 KiB
case_12_3708866831.txt AC 1 ms 3448 KiB
case_12_52237561.txt AC 2 ms 3536 KiB
case_12_529.txt AC 3 ms 8280 KiB
case_12_642643483.txt AC 1 ms 3480 KiB
case_12_70219.txt AC 6 ms 8316 KiB
case_12_71.txt AC 3 ms 8236 KiB
case_12_85303937113.txt AC 1 ms 3540 KiB
case_12_85303937113_2.txt AC 1 ms 3680 KiB
case_12_989.txt AC 3 ms 8216 KiB
case_12_989_2.txt AC 3 ms 8152 KiB
case_13_1.txt AC 2 ms 8280 KiB
case_14_6421.txt AC 3 ms 8424 KiB
case_15_1382253990020129.txt AC 1 ms 3540 KiB
case_15_16653662530363.txt AC 1 ms 3540 KiB
case_15_2573.txt AC 3 ms 8236 KiB
case_15_31.txt AC 2 ms 8416 KiB
case_15_83.txt AC 3 ms 8284 KiB
case_16_1.txt AC 2 ms 8280 KiB
case_16_1028654132108003.txt AC 1 ms 3540 KiB
case_16_1333.txt AC 2 ms 8284 KiB
case_16_31.txt AC 2 ms 8224 KiB
case_16_31888278095348093.txt AC 1 ms 3468 KiB
case_16_43.txt AC 2 ms 8280 KiB
case_16_44232127680644129.txt AC 1 ms 3536 KiB
case_8_1.txt AC 2 ms 8228 KiB
full_10_3715891199.txt AC 1 ms 3544 KiB
full_16_1371195958099967999.txt AC 1 ms 3536 KiB
full_2_7.txt AC 3 ms 8224 KiB
max_13_51011754393599.txt AC 1 ms 3536 KiB
max_16_1371195958099967999.txt AC 1 ms 3484 KiB
max_5_3839.txt AC 3 ms 8188 KiB
sample.txt AC 2 ms 8416 KiB
sample_2.txt AC 2 ms 8232 KiB
sample_3.txt AC 43 ms 3480 KiB
small_m_14_6421.txt AC 3 ms 8196 KiB
small_m_15_516263538441253.txt AC 1 ms 3476 KiB
zero_11_41.txt AC 3 ms 8276 KiB
zero_14_1.txt AC 3 ms 8280 KiB
zero_15_1382253990020129.txt AC 1 ms 3480 KiB
zero_16_1028654132108003.txt AC 1 ms 3480 KiB