Submission #686759

# Submission time Handle Problem Language Result Execution time Memory
686759 2023-01-25T23:04:00 Z tolbi Bootfall (IZhO17_bootfall) C++17
13 / 100
151 ms 10188 KB
#pragma optimize("Bismillahirrahmanirrahim")
//█▀█─█──█──█▀█─█─█
//█▄█─█──█──█▄█─█■█
//█─█─█▄─█▄─█─█─█─█
//Allahuekber
//ahmet23 orz...
//Sani buyuk Osman Pasa Plevneden cikmam diyor.
//FatihSultanMehmedHan
//YavuzSultanSelimHan
//AbdulhamidHan
#define author tolbi
#include <bits/stdc++.h>
#ifdef LOCAL
	#include "23.h"
#endif
#define int long long
#define endl '\n'
#define vint(x) vector<int> x
#define deci(x) int x;cin>>x;
#define decstr(x) string x;cin>>x;
#define cinarr(x) for (auto &it : x) cin>>it;
#define coutarr(x) for (auto &it : x) cout<<it<<" ";cout<<endl;
#define sortarr(x) sort(x.begin(),x.end())
#define sortrarr(x) sort(x.rbegin(),x.rend())
#define det(x) cout<<"NO\0YES"+x*3<<endl;
#define INF LONG_LONG_MAX
#define rev(x) reverse(x.begin(),x.end());
#define ios ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define tol(bi) (1LL<<((int)(bi)))
const int MOD = 1e9+7;
using namespace std;
mt19937 ayahya(chrono::high_resolution_clock().now().time_since_epoch().count());
int32_t main(){
	ios;
	int t=1;
	int tno = 0;
	if (!t) cin>>t;
	while (t-(tno++)){
		deci(n);
		vint(arr(n));
		cinarr(arr);
		vector<int> ansarr(250001,0);
		ansarr[0]=1;
		int sum = 0;
		for (int i = 0; i < n; i++){
			sum+=arr[i];
			for(int j = ansarr.size()-arr[i]-1; j >= 0; j--){
				ansarr[j + arr[i]] += ansarr[j];
			}
		}
		if (sum%2 || ansarr[sum/2]==0){
			cout<<0<<endl;
			continue;
		}
		vector<int> kk(1000001,0);
		for (int i = 0; i < n; i++){
			for (int j = 0; j < ansarr.size(); j++){
				if (ansarr[j]>0 && j*2>=sum-arr[i]) kk[j*2-sum+arr[i]]++;
				if (j<ansarr.size()-arr[i]) ansarr[j+arr[i]]-=ansarr[j];
			}
			for (int j = ansarr.size()-arr[i]-1; j >= 0; j--){
				ansarr[j+arr[i]]+=ansarr[j];
			}
		}
		vector<int> hueh;
		for (int i = 1; i < kk.size(); i++){
			if (kk[i]==n) hueh.push_back(i);
		}
		cout<<hueh.size()<<endl;
		coutarr(hueh);
	}
}

Compilation message

bootfall.cpp:1: warning: ignoring '#pragma optimize ' [-Wunknown-pragmas]
    1 | #pragma optimize("Bismillahirrahmanirrahim")
      | 
bootfall.cpp: In function 'int32_t main()':
bootfall.cpp:57:22: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   57 |    for (int j = 0; j < ansarr.size(); j++){
      |                    ~~^~~~~~~~~~~~~~~
bootfall.cpp:59:10: warning: comparison of integer expressions of different signedness: 'long long int' and 'long long unsigned int' [-Wsign-compare]
   59 |     if (j<ansarr.size()-arr[i]) ansarr[j+arr[i]]-=ansarr[j];
bootfall.cpp:66:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   66 |   for (int i = 1; i < kk.size(); i++){
      |                   ~~^~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
10 Correct 71 ms 10188 KB Output is correct
11 Correct 74 ms 10096 KB Output is correct
12 Correct 77 ms 10068 KB Output is correct
13 Correct 62 ms 10100 KB Output is correct
14 Correct 68 ms 10100 KB Output is correct
15 Correct 67 ms 9980 KB Output is correct
16 Correct 69 ms 10092 KB Output is correct
17 Correct 47 ms 10104 KB Output is correct
18 Correct 60 ms 10108 KB Output is correct
19 Correct 63 ms 10112 KB Output is correct
20 Correct 73 ms 10100 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
10 Correct 71 ms 10188 KB Output is correct
11 Correct 74 ms 10096 KB Output is correct
12 Correct 77 ms 10068 KB Output is correct
13 Correct 62 ms 10100 KB Output is correct
14 Correct 68 ms 10100 KB Output is correct
15 Correct 67 ms 9980 KB Output is correct
16 Correct 69 ms 10092 KB Output is correct
17 Correct 47 ms 10104 KB Output is correct
18 Correct 60 ms 10108 KB Output is correct
19 Correct 63 ms 10112 KB Output is correct
20 Correct 73 ms 10100 KB Output is correct
21 Correct 151 ms 10092 KB Output is correct
22 Incorrect 147 ms 10104 KB Output isn't correct
23 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
10 Correct 71 ms 10188 KB Output is correct
11 Correct 74 ms 10096 KB Output is correct
12 Correct 77 ms 10068 KB Output is correct
13 Correct 62 ms 10100 KB Output is correct
14 Correct 68 ms 10100 KB Output is correct
15 Correct 67 ms 9980 KB Output is correct
16 Correct 69 ms 10092 KB Output is correct
17 Correct 47 ms 10104 KB Output is correct
18 Correct 60 ms 10108 KB Output is correct
19 Correct 63 ms 10112 KB Output is correct
20 Correct 73 ms 10100 KB Output is correct
21 Correct 151 ms 10092 KB Output is correct
22 Incorrect 147 ms 10104 KB Output isn't correct
23 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
10 Correct 71 ms 10188 KB Output is correct
11 Correct 74 ms 10096 KB Output is correct
12 Correct 77 ms 10068 KB Output is correct
13 Correct 62 ms 10100 KB Output is correct
14 Correct 68 ms 10100 KB Output is correct
15 Correct 67 ms 9980 KB Output is correct
16 Correct 69 ms 10092 KB Output is correct
17 Correct 47 ms 10104 KB Output is correct
18 Correct 60 ms 10108 KB Output is correct
19 Correct 63 ms 10112 KB Output is correct
20 Correct 73 ms 10100 KB Output is correct
21 Correct 151 ms 10092 KB Output is correct
22 Incorrect 147 ms 10104 KB Output isn't correct
23 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 16 ms 10068 KB Output is correct
2 Correct 20 ms 10068 KB Output is correct
3 Correct 4 ms 2260 KB Output is correct
4 Correct 15 ms 10068 KB Output is correct
5 Correct 35 ms 10056 KB Output is correct
6 Correct 24 ms 10068 KB Output is correct
7 Correct 20 ms 10068 KB Output is correct
8 Correct 33 ms 10100 KB Output is correct
9 Correct 29 ms 10104 KB Output is correct
10 Correct 71 ms 10188 KB Output is correct
11 Correct 74 ms 10096 KB Output is correct
12 Correct 77 ms 10068 KB Output is correct
13 Correct 62 ms 10100 KB Output is correct
14 Correct 68 ms 10100 KB Output is correct
15 Correct 67 ms 9980 KB Output is correct
16 Correct 69 ms 10092 KB Output is correct
17 Correct 47 ms 10104 KB Output is correct
18 Correct 60 ms 10108 KB Output is correct
19 Correct 63 ms 10112 KB Output is correct
20 Correct 73 ms 10100 KB Output is correct
21 Correct 151 ms 10092 KB Output is correct
22 Incorrect 147 ms 10104 KB Output isn't correct
23 Halted 0 ms 0 KB -