#include <bits/stdc++.h> #define PB push_back #define ST first #define ND second #define _ ios_base::sync_with_stdio(0); cin.tie(0); //mt19937 rng(chrono::high_resolution_clock::now().time_since_epoch().count()); using namespace std; using ll = long long; using pi = pair<int,int>; using vi = vector<int>; const int nax = 310; const ll INF = 1e18; int n; int a[nax]; int b[nax]; ll mx[nax]; int main() {_ cin >> n; //~ cout << n << "\n"; for(int i = 1; i <= n; ++i) { cin >> a[i]; //~ cout << a[i] << " "; mx[i] = -INF; } b[1] = a[1]; for(int i = 2; i <= n; ++i) { b[i] = a[i] - a[i - 1]; } for(int l = 1; l <= n; ++l) { ll sum = 0; for(int r = l; r <= n; ++r) { sum += b[r]; mx[r - l + 1] = max(mx[r - l + 1], sum); } } for(int i = 1; i <= n; ++i) { if(mx[i] != a[i]) { //~ cout << i << " " << mx[i] << " " << a[i] << "\n"; cout << "NIE"; return 0; } } cout << "TAK\n" << n << "\n"; for(int i = 1; i <= n; ++i) { cout << b[i] << " "; } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | #include <bits/stdc++.h> #define PB push_back #define ST first #define ND second #define _ ios_base::sync_with_stdio(0); cin.tie(0); //mt19937 rng(chrono::high_resolution_clock::now().time_since_epoch().count()); using namespace std; using ll = long long; using pi = pair<int,int>; using vi = vector<int>; const int nax = 310; const ll INF = 1e18; int n; int a[nax]; int b[nax]; ll mx[nax]; int main() {_ cin >> n; //~ cout << n << "\n"; for(int i = 1; i <= n; ++i) { cin >> a[i]; //~ cout << a[i] << " "; mx[i] = -INF; } b[1] = a[1]; for(int i = 2; i <= n; ++i) { b[i] = a[i] - a[i - 1]; } for(int l = 1; l <= n; ++l) { ll sum = 0; for(int r = l; r <= n; ++r) { sum += b[r]; mx[r - l + 1] = max(mx[r - l + 1], sum); } } for(int i = 1; i <= n; ++i) { if(mx[i] != a[i]) { //~ cout << i << " " << mx[i] << " " << a[i] << "\n"; cout << "NIE"; return 0; } } cout << "TAK\n" << n << "\n"; for(int i = 1; i <= n; ++i) { cout << b[i] << " "; } } |