/* nie miałem czasu robić 3 plików, więc masz wszystko w jednym pliku, najwyżej wywal rozdziel to na 3 pliki, wywal funkcje od niepotrzebnych zadań i usuń ich wywołania z main */ /*
* File: main.cpp
* Author: ksm
*
* Created on 26 marzec 2012, 16:03
*/ #include
#include
#include
#include
using namespace std; /* wyciągam do vectora cyfry z liczby, robię to raz dla wygody */ vector split(int liczba) {
vector v;
while (liczba > 0) {
v.push_back(liczba % 10);
liczba /= 10;
}
reverse(v.begin(), v.end());
return v;
} bool zad17(const vector &v) {
vector::const_iterator i = v.begin();
int c = *i++;
for (; i < v.end(); ++i) {
if (c >= *i) {
return false;
}
}
return true;
} bool zad18(const vector &v) {
for (vector::const_iterator i = v.begin();
i < v.end();
++i)
{
if (*i % 2 != 0) {
return false;
}
}
return true;
} bool isOne(int l) {
return l == 1;
} bool zad19(const vector &v) {
int cnt = count_if(v.begin(), v.end(), isOne);
return cnt % 2 == 1;
} /*
*
*/
int main(int argc, char** argv) {
int num;
cin >> num;
int liczba;
for (int i = 0 ; i < num ; ++i) {
cin >> liczba;
vector v = split(liczba);
cout << liczba << (zad17(v) ? " TAK " : " NIE ") <<
(zad18(v) ? " TAK " : " NIE ") <<
(zad19(v) ? " TAK " : " NIE ") << endl;
} return 0;
}