View Code of Problem 7

#include <stdio.h>
#define MAX 10000
int p[MAX];
int q[MAX];
int main()
{
    int t, n, m;
    int a, b, temp;
    int i, j, k;
    int flag;//非0时有可转换的数据
    int pos = 0;

    scanf("%d",&t);//T组输入
    for (i=0; i<t; i++)
    {
        //读入等式
        scanf("%d", &n);//n行等式
        for (j=0; j<n; j++)
        {
            scanf("%d=%d", &a, &b);
            p[j] = a;
            p[2*n-1-j] = b;
        }

        //读入测试数据
        scanf("%d",&m);//m组数据
        for (j=0; j<m; j++)
        {
            scanf("%d",&temp);
            flag = 0;

            for (k=0; k<n*2; k++)
            {
                if (temp == p[k])
                {
                    flag = 1;
                    break;
                }
            }

            if (flag)
                q[pos] = p[2*n-k-1];
                else
                    q[pos] = 0;
            pos++;
        }
        q[pos] = -1;
        pos++;
    }
    pos--;
    for (i=0; i<pos; i++)
    {
        if (q[i] == 0)
            printf("UNKNOW\n");
        else
            if (q[i] == (-1))
            printf("\n");
        else
            printf("%d\n",q[i]);
    }
    return (0);
}

Double click to view unformatted code.


Back to problem 7