码迷,mamicode.com
首页 > 其他好文 > 详细

PAT 甲级 A1092 (2019/02/18)

时间:2019-02-24 10:21:59      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:ring   can   else   ++   main   change   strlen   std   table   

#include<cstdio>
#include<cstring>
int change(char ch){
    if(ch >= '0' && ch <= '9') return ch - '0';
    if(ch >= 'a' && ch <= 'z') return ch - 'a' + 10; 
    if(ch >= 'A' && ch <= 'Z') return ch - 'A' + 36;
}
int main(){
    char whole[1001], target[1001];
    int HashTable[80] = {0}, miss = 0;
    scanf("%s", whole);
    scanf("%s", target);
    int len1 = strlen(whole);
    int len2 = strlen(target);
    for(int i = 0; i < len1; i++){
        int id = change(whole[i]);
        HashTable[id]++; 
    }
    for(int j = 0; j < len2; j++){
        int id = change(target[j]);
        HashTable[id]--;
        if(HashTable[id] < 0){
            miss++;
        }
    }
    if(miss > 0) printf("No %d\n", miss);
    else printf("Yes %d\n", len1-len2);
    return 0; 
}

PAT 甲级 A1092 (2019/02/18)

标签:ring   can   else   ++   main   change   strlen   std   table   

原文地址:https://www.cnblogs.com/zjsaipplp/p/10425243.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!