• 爱改名的小融(三部曲)


    题目描述 Description

    Wikioi上有个人叫小融,他喜欢改名。

    他的名字都是英文,只要按顺序出现R,K,Y三个字母,就是他的名字。

    给你N个名字,请你一一判断是不是小融。

    输入描述 Input Description

    N

    N行,名字(全大写)

    输出描述 Output Description

    N行,每行YES或NO(大写)

    样例输入 Sample Input

    3

    RKY

    RAINKY

    RINKEMENT

    样例输出 Sample Output

    YES

    YES

    NO

    数据范围及提示 Data Size & Hint

    N<=10,字符串长度<=50.

    代码实现:

     1 #include<cstdio>
     2 #include<cstring>
     3 int n,l,i,j;
     4 char ch[60],name[]={'R','K','Y'};
     5 int main(){
     6     scanf("%d",&n);
     7     while(n--){
     8         scanf("%s",ch);
     9         for(i=j=0;ch[i]&&name[j];i++)
    10         if(ch[i]==name[j]) j++;
    11         if(j==3) printf("YES
    ");
    12         else printf("NO
    ");
    13     }
    14     return 0;
    15 }
    题目描述 Description

    Wikioi上有个人叫小融,他喜欢改名。
    现在他的要求变了,只要是英文字母就是他的名字。
    先给你N个名字,请你一一判断是不是小融。
    本题还加强了测试数据

    输入描述 Input Description

    N
    N行名字(全部为字符)

    输出描述 Output Description

     N行,YES或NO(大写)

    样例输入 Sample Input

    3
    &6*14315
    Rinkement
    micsloox

    样例输出 Sample Output

    NO

    YES

    YES

    数据范围及提示 Data Size & Hint

    对于40%的数据 N≤10 名字长度≤100
    对于100%的数据 N≤50 名字长度≤100000

    代码实现:

     1 #include<cstdio>
     2 #include<cstring>
     3 using namespace std;
     4 int n,l;
     5 char ch[100010];
     6 bool p(int x){
     7     for(int i=0;i<l;i++)
     8     if(ch[i]<'A'||ch[i]>'z'||(ch[i]>'Z'&&ch[i]<'a')) return 0;
     9     return 1;
    10 }
    11 int main(){
    12     scanf("%d",&n);
    13     while(n--){
    14         scanf("%s",ch);
    15         l=strlen(ch);
    16         if(p(l)) printf("YES
    ");
    17         else printf("NO
    ");
    18     }
    19     return 0;
    20 }

    不知为何,本地不对(都没法调试),交上A了。

    题目描述 Description

    Wikioi上有个人叫小融,他喜欢改名。
    现在他的要求变了,只要是英文字母就是他的名字。
    先给你N个名字,请你输出正确名字的个数及编号。
    本题还加强了测试数据

    输入描述 Input Description

    N
    N行名字(全部为字符)

    输出描述 Output Description

    第一行:个数
    第二行:编号

    样例输入 Sample Input

    3
    &6*14315
    Rinkement
    micsloox

    样例输出 Sample Output

    2
    2 3 

    数据范围及提示 Data Size & Hint

    对于40%的数据 N≤10 名字长度≤100
    对于100%的数据 N≤50 名字长度≤100000

    代码实现:

     1 #include<cstdio>
     2 #include<cstring>
     3 using namespace std;
     4 int n,l,m,s[60];
     5 char ch[100010];
     6 bool p(int x){
     7     for(int i=0;i<l;i++) if(ch[i]<'A'||ch[i]>'z'||(ch[i]>'Z'&&ch[i]<'a')) return 0;
     8     return 1;
     9 }
    10 int main(){
    11     scanf("%d",&n);
    12     for(int k=1;k<=n;k++){
    13         scanf("%s",ch);
    14         l=strlen(ch);
    15         if(p(l)) s[m++]=k;
    16     }
    17     printf("%d
    ",m);
    18     for(int i=0;i<m;i++) printf("%d ",s[i]);
    19     return 0;
    20 }

    题目来源:CODE[VS]

  • 相关阅读:
    参考文献怎么写~(这个老是忘,所以贴在这里)
    STL 容器之 priority_queue小结
    新闻发布系统-项目总结
    【DataStructure In Python】Python模拟二叉树
    【HDOJ】2062 Subset sequence
    【POJ】1054 The Troublesome Frog
    【Pyhton Network】使用poll()或select()实现非阻塞传输
    【Python Network】分解DNS查询结果
    【DataStructure In Python】Python实现各种排序算法
    【Python Network】权威域名服务器级联查询
  • 原文地址:https://www.cnblogs.com/J-william/p/6383902.html
Copyright © 2020-2023  润新知