2011年6月16日 星期四

ACM 11340 Newspaper

不難,要注意這題會用到ASCII擴充字元(128~255,由IBM制定,非標準),所以陣列不能只開128,要開256


#include <stdio.h>

int main(void)
{
    unsigned char ch;
    int i, n, k, m, value, c[256];
    double sum;
   
    scanf("%d", &n);
    while (n--)
    {
        for (i = 0; i < 256; i++)
            c[i] = 0;
        scanf("%d", &k);
        while (k--)
        {
            getchar();
            scanf("%c%d", &ch, &value);
            c[ch] = value;
        }
        scanf("%d", &m);
        getchar();
        sum = 0;
        while (m--)
            while ((ch = getchar()) != '\n')
                sum = sum + c[ch];
        printf("%.2f$\n", sum/100);
    }
   
    return 0;
}

沒有留言:

張貼留言