• A Pangram


    Codeforces Round #295 div2 的A题,题意是判读一个字符串是不是全字母句,也就是这个字符串是否包含了26个字母,无论大小写。


    Sample test(s)
    input
    12
    toosmallword
    
    output
    NO
    
    input
    35
    TheQuickBrownFoxJumpsOverTheLazyDog
    
    output
    YES
    input 的第一行是字符串的长度,第二行是字符串,output的话,如果不是pangram就输出NO,否则输出YES

    因为只要判断是否包含26个字母,所以,如果字符串长度小于26的话,根本上是不可能的,然后,遍历字符串的每个字符,把出现的字母记录下来(打表),最后,判断26个字母是否都包含,很简单的一道题。

    #include <iostream>
    #include <ctype.h>
    #include <string>
    using namespace std;
    int alph[27];
    int main(){
        string s;
        int n, i;
        cin >> n;
        cin >> s;
        if(n < 26){
    	cout << "NO"; return 0;
        }
    
        for( i = 0; i < n; i++){
    	    char c = s[i];
    	    c = tolower(c);
    	    alph[c-97] = 1;
        }
        for( i = 0; i < 26; i++){
    	    if(!alph[i]) break;
        }
        if(i == 26) cout << "YES";
        else cout << "NO";
        return 0;
    }


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    算法提高 道路和航路
    奇偶剪枝
    二分求值
    并查集--路径压缩
    Oracle数据库导入导出DMP文件
    Spring IoC的实现与思考(一)
    sql基础拾遗
    jquery事件函数的使用之focus
    Java动态代理之cglib
    Java se之动态代理
  • 原文地址:https://www.cnblogs.com/Rex7/p/4752533.html
Copyright © 2020-2023  润新知