#include<iostream>
using namespace std;
#define N 300
#define L 100000
const long long mINF = -10000000000000;
int A[N];
long long W[L];
int main () {
ios_base::sync_with_stdio(0);
int n, x, l = 0;
long long a, r;
cin>>n;
bool czy = true;
for (int i = 0; i < n; ++i) {
cin>>A[i];
x = i+1;
for (int j = 0; j < i; ++j) {
if (A[j] * x < A[i] * (j+1)) {
czy = false;
break;
}
}
if (!czy) break;
a = A[i]/x;
r = A[i] - (x*a);
for (int j = 0; j < x; ++j) {
W[l] = a;
++l;
}
if (r != 0) W[l-1] += r;
W[l] = mINF;
++l;
}
if (czy) {
cout<<"TAK\n";
cout<<l<<'\n';
for (int i = 0; i < l; ++i) cout<<W[i]<<' ';
}
else cout<<"NIE";
return 0;
}
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 | #include<iostream> using namespace std; #define N 300 #define L 100000 const long long mINF = -10000000000000; int A[N]; long long W[L]; int main () { ios_base::sync_with_stdio(0); int n, x, l = 0; long long a, r; cin>>n; bool czy = true; for (int i = 0; i < n; ++i) { cin>>A[i]; x = i+1; for (int j = 0; j < i; ++j) { if (A[j] * x < A[i] * (j+1)) { czy = false; break; } } if (!czy) break; a = A[i]/x; r = A[i] - (x*a); for (int j = 0; j < x; ++j) { W[l] = a; ++l; } if (r != 0) W[l-1] += r; W[l] = mINF; ++l; } if (czy) { cout<<"TAK\n"; cout<<l<<'\n'; for (int i = 0; i < l; ++i) cout<<W[i]<<' '; } else cout<<"NIE"; return 0; } |
English