算法提高:淘淘的名单

问题描述
  by ZBY... :) 淘淘拿到了一份名单,他想对上面的名字进行处理,挑出一些特殊的名字,他请你来帮忙。
  淘淘关注以下名字:
  如果这个名字是“WYS”,他希望你的程序输出“KXZSMR”。
  如果这个名字是“CQ”,他希望你的程序输出“CHAIQIANG”。
  如果这个名字是“LC“,他希望你的程序输出“DRAGONNET”。
  如果这个名字是“SYT”或“SSD”或“LSS”或“LYF”,他希望你的程序输出“STUDYFATHER”。
  如果这个名字与上述任意名字都不相同,他希望你的程序输出“DENOMINATOR”。
输入格式
  第一行有一个整数N,表示淘淘手中名单里的人数。
  接下来N行,每行有一个字符串,即名单里的人名。
输出格式
  输出N行,每行输出每个人名的判断结果。
样例输入
9
WYS
CQ
WYS
LC
SYT
SSD
LSS
LYF
ZBY
样例输出
KXZSMR
CHAIQIANG
KXZSMR
DRAGONNET
STUDYFATHER
STUDYFATHER
STUDYFATHER
STUDYFATHER
DENOMINATOR
数据规模和约定
  对于 50% 数据,N <= 1000,且名单中的名字仅可能为“WYS”,“CQ”,“LC”三者之一,没有其他的名字。
  对于 100% 数据,N <= 10000,人名仅由大写字母组成,长度不超过5。
 
思路:没什么思路,就是要注意
1.输入数字后再输入字符串需要加getchar() 
2.大数组开全局
3.不能直接用 == 比较字符串是否相等,用strcmp
复制代码
 1 #include<stdio.h>
 2 #include<string.h>
 3 
 4 char nameStr[10000][20] = { 0 };
 5 int main(void)
 6 {
 7     int n, i;
 8 
 9     scanf("%d", &n);
10     getchar();
11     for (i = 0; i < n; i++)
12     {
13         gets(nameStr[i]);
14     }
15 
16     for (i = 0; i < n; i++)
17     {
18         if (strcmp(nameStr[i], "WYS") == 0)
19         {
20             printf("KXZSMR\n");
21         }
22         else if (strcmp(nameStr[i], "CQ") == 0)
23         {
24             printf("CHAIQIANG\n");
25         }
26         else if (strcmp(nameStr[i], "LC") == 0)
27         {
28             printf("DRAGONNET\n");
29         }
30         else if (strcmp(nameStr[i], "SYT") == 0 || strcmp(nameStr[i], "SSD") == 0 || strcmp(nameStr[i], "LSS") == 0 || strcmp(nameStr[i], "LYF") == 0)
31         {
32             printf("STUDYFATHER\n");
33         }
34         else
35         {
36             printf("DENOMINATOR\n");
37         }
38     
39     }
40     return 0;
41 }
复制代码
 

 

 

 
posted @   Xxaj5  阅读(248)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示