답안 #500836

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
500836 2022-01-01T12:00:55 Z EliteCallsYou Bootfall (IZhO17_bootfall) C++17
13 / 100
1000 ms 296 KB
# include <bits/stdc++.h>
using namespace std ;
//############################################################################
# define read(a)/**/for(int i=0;i<int(sizeof(a)/sizeof(a[0]));i++){cin>>a[i];}
# define print(x)/**/for(auto zx:x){cout<<zx<<' ';}
const char* tochar(string a){return a.c_str();}
void files(){freopen("planting.in","r",stdin);freopen("planting.out","w",stdout);}
void speed(){ios_base::sync_with_stdio(false);cin.tie(0);}
long long gcd(long long a,long long b){if(!b){return a;}a%=b;return gcd(b,a);}
long long lcm(long long a,long long b){return a /gcd(a,b) * b;}
//###########################################################################
const int N = 3e5 + 5 ;
const long long MOD = 1e17+7 ;
//###########################################################################
void hack(){}
//###########################################################################
int main(){
	int n, sum = 0 ; cin >> n ;
	int ar[n+1] ;
	for ( int i = 0 ; i < n ; i ++ ){
		cin >> ar[i] ;
		sum += ar[i] ;
	}
	vector < int > ans ;
	for ( int cur = 1 ; cur < 1000 ; cur ++ ){

		ar[n] = cur ;
		sum ++ ;
		bool ok = true ;

		for ( int exl = 0 ; exl <= n ; exl ++ ){
			if ( (sum-ar[exl])%2 ){
				ok = false ;
				break ;
			}
			int s = (sum-ar[exl])/2 ;
			bool dp[s+1] = {false} ;
			dp[0] = true ;
			//////////////////////////////////
			for ( int it = 0 ; it <= n ; it ++ ){
				if ( it == exl ){continue;}
				for ( int i = s-ar[it] ; i > -1 ; i -- ){
					if ( dp[i] ){
						dp[i+ar[it]] = true ;
					}
				}
			}
			//////////////////////////////////
			if ( !dp[s] ){
				ok = false ;
				break ;
			}
		}

		if ( ok ){
			ans.push_back(cur) ;
		}
	}


	cout << ans.size() << '\n' ;
	for ( auto it : ans ){
		cout << it << ' ' ;
	}
}	

Compilation message

bootfall.cpp: In function 'void files()':
bootfall.cpp:7:21: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 | void files(){freopen("planting.in","r",stdin);freopen("planting.out","w",stdout);}
      |              ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
bootfall.cpp:7:54: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 | void files(){freopen("planting.in","r",stdin);freopen("planting.out","w",stdout);}
      |                                               ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
10 Correct 11 ms 288 KB Output is correct
11 Correct 21 ms 204 KB Output is correct
12 Correct 6 ms 204 KB Output is correct
13 Correct 4 ms 204 KB Output is correct
14 Correct 23 ms 288 KB Output is correct
15 Correct 14 ms 292 KB Output is correct
16 Correct 20 ms 296 KB Output is correct
17 Correct 6 ms 204 KB Output is correct
18 Correct 13 ms 292 KB Output is correct
19 Correct 12 ms 288 KB Output is correct
20 Correct 12 ms 292 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
10 Correct 11 ms 288 KB Output is correct
11 Correct 21 ms 204 KB Output is correct
12 Correct 6 ms 204 KB Output is correct
13 Correct 4 ms 204 KB Output is correct
14 Correct 23 ms 288 KB Output is correct
15 Correct 14 ms 292 KB Output is correct
16 Correct 20 ms 296 KB Output is correct
17 Correct 6 ms 204 KB Output is correct
18 Correct 13 ms 292 KB Output is correct
19 Correct 12 ms 288 KB Output is correct
20 Correct 12 ms 292 KB Output is correct
21 Execution timed out 1081 ms 268 KB Time limit exceeded
22 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
10 Correct 11 ms 288 KB Output is correct
11 Correct 21 ms 204 KB Output is correct
12 Correct 6 ms 204 KB Output is correct
13 Correct 4 ms 204 KB Output is correct
14 Correct 23 ms 288 KB Output is correct
15 Correct 14 ms 292 KB Output is correct
16 Correct 20 ms 296 KB Output is correct
17 Correct 6 ms 204 KB Output is correct
18 Correct 13 ms 292 KB Output is correct
19 Correct 12 ms 288 KB Output is correct
20 Correct 12 ms 292 KB Output is correct
21 Execution timed out 1081 ms 268 KB Time limit exceeded
22 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
10 Correct 11 ms 288 KB Output is correct
11 Correct 21 ms 204 KB Output is correct
12 Correct 6 ms 204 KB Output is correct
13 Correct 4 ms 204 KB Output is correct
14 Correct 23 ms 288 KB Output is correct
15 Correct 14 ms 292 KB Output is correct
16 Correct 20 ms 296 KB Output is correct
17 Correct 6 ms 204 KB Output is correct
18 Correct 13 ms 292 KB Output is correct
19 Correct 12 ms 288 KB Output is correct
20 Correct 12 ms 292 KB Output is correct
21 Execution timed out 1081 ms 268 KB Time limit exceeded
22 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 204 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Correct 26 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 2 ms 292 KB Output is correct
8 Correct 41 ms 204 KB Output is correct
9 Correct 3 ms 204 KB Output is correct
10 Correct 11 ms 288 KB Output is correct
11 Correct 21 ms 204 KB Output is correct
12 Correct 6 ms 204 KB Output is correct
13 Correct 4 ms 204 KB Output is correct
14 Correct 23 ms 288 KB Output is correct
15 Correct 14 ms 292 KB Output is correct
16 Correct 20 ms 296 KB Output is correct
17 Correct 6 ms 204 KB Output is correct
18 Correct 13 ms 292 KB Output is correct
19 Correct 12 ms 288 KB Output is correct
20 Correct 12 ms 292 KB Output is correct
21 Execution timed out 1081 ms 268 KB Time limit exceeded
22 Halted 0 ms 0 KB -