Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- /// Typedef
- typedef long long ll;
- #define sc1(a) scanf("%lld",&a)
- #define sc2(a,b) scanf("%lld %lld",&a,&b)
- #define pf1(a) printf("%lld\n", a)
- #define pf2(a,b) printf("%lld %lld\n",a,b)
- #define mx 10000007
- #define mod 1000000007
- #define PI acos(-1.0)
- #define size1 10005
- int drx[8] = {-2,-2,-1,-1,1,1,2,2};
- int dcy[8] = {-1,1,-2,2,-2,2,-1,1};
- int dirx[4] = { -1, 0, 1, 0 };
- int diry[4] = { 0, -1, 0, 1 };
- int main()
- {
- ll tc, num, t = 1;
- // freopen("/opt/Coding/clion code/input.txt", "r", stdin);
- //freopen("/opt/Coding/clion code/output.txt", "w", stdout);
- while (cin >> num){
- ll arr[num + 5];
- for(ll i = 1; i <= num; i++){
- sc1(arr[i]);
- }
- cout << "Case #" << t++ << ": ";
- for(ll i = 1; i <= num; i++){
- cout << arr[i] << (i == num ? '\n':' ');
- }
- /*
- brr[0] = arr[0];
- for(ll i = 1; i < num; i++){
- brr[i] = brr[i - 1] + arr[i];
- }
- */
- bool save[1005 * 31];
- memset(save, false, sizeof(save));
- vector <ll> vc;
- vc.push_back(0);
- bool check = true;
- for(ll i = 1; check && i <= num; i++){
- if(save[arr[i]] || (i > 1 && arr[i] <= arr[i - 1]))
- check = false;
- ll siz = vc.size();
- for(ll j = 0; j < siz; j++){
- ll now = vc[j];
- if(!save[now + arr[i]]){
- vc.push_back(now + arr[i]);
- save[now + arr[i]] = true;
- }
- }
- }
- if(check)
- cout << "This is an A-sequence." << endl;
- else
- cout << "This is not an A-sequence." << endl;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment