Cod sursa(job #1471294)

Utilizator akaprosAna Kapros akapros Data 13 august 2015 16:18:30
Problema Invers Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <cstdio>
#include <cstring>
#include <algorithm>
#define Nmax 10002
using namespace std;
int m, i, j, t, up;
char s[Nmax];
void read()
{
    freopen("invers.in", "r", stdin);
    freopen("invers.out", "w", stdout);
    scanf("%d\n", &t);
    while (t --)
    {
        gets(s);
        m = strlen(s);
        i = 0; j = m - 1;
        up = 0;
        if (m == 1 && (s[i] - '0') % 2)
        {
            printf("NU\n");
            continue;
        }
        while (i < j)
        {
            if (s[i] == s[j] || abs(s[i] - s[j]) == 1 || abs(s[i] - s[j]) == 9)
            {
                ++ i;
                -- j;
                continue;
            }
            if (i == 1 && !up)
                ++ j,
                   up = 1;
            else
                {
                    i = 0;
                    j = m;
                    break;
                }
        }
        if (i >= j)
            printf("DA\n");
            else
                printf("NU\n");
    }
}
int main()
{
    read();
    return 0;
}