#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] << " "; } } |
English