NBUT 1117 Kotiya's Incantation
时间:2022-05-08
本文章向大家介绍NBUT 1117 Kotiya's Incantation,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
题意:判断两个字符窜是否一样,不一样,或相似,字符窜包含大小写字母,'n','t',' ',‘r’,所以一样所有的都一样,相似是只要字母顺序相同就行了,其他的都不一样
分析:这是一道好题,在给我几天如果不看别人代码和解题报告打死我想不到做不出来,比赛的时候没做出来,纯属正常确实不会,不过还是很多人做出来,厉害。这道题否定了我以前的看法,两个字符窜的区别一定是回车,但是这句话Each string is breaked by character '-'.也就是说每个字符窜遇到‘-’判断结束,第一个字符窜结束后不用在回车后进行输入第二个字符窜,若输入回车后则是第二个字符窜的第一个字符,这里还学到了知道EOF是两个字符所以scanf需要输入两次^z,如果在第二个字符窜中不去判断EOF的话很可能造成Runtime error [access violation],因为会在第二个字符窜那里死循环了,比如a-a-n^z^z这样就死循环了
c=getchar()只要判断c是否等于-1就行输入依次就可以
还有输入字符除了getchar()还有scanf(“%c”)
#include<stdio.h>
#include<string.h>
const int MAXN=10000;
int main()
{
char str1[MAXN],str2[MAXN],rem1[MAXN],rem2[MAXN];
int i;
int cas1,cas2,tes1,tes2;
char ch;
while(scanf("%c",&ch)!=EOF)
{
tes1=0,tes2=0;
cas1=0;
if(ch=='-')
{
}
else
{
str1[0]=ch;
cas1=1;
while(1)
{
ch=getchar();
if(ch==-1) return 0;//就是这里,EOF占两个字符。。。
if(ch=='-') break;
str1[cas1++]=ch;
}
}
str1[cas1]=' ';
cas2=0;
while(scanf("%c",&ch))
{
if(ch=='-') break;
str2[cas2++]=ch;
}
str2[cas2]=' ';
if(!strcmp(str1,str2)) printf("SAMEn");
else
{
for (i=0;i<str1[i];i++)
{
if( (str1[i]>='A' && str1[i]<='Z') || (str1[i]>='a' && str1[i]<='z')) rem1[tes1++]=str1[i];
}
rem1[tes1]=' ';
for (i=0;str2[i];i++)
{
if( (str2[i]>='A' && str2[i]<='Z') || (str2[i]>='a' && str2[i]<='z')) rem2[tes2++]=str2[i];
}
rem2[tes2]=' ';
if(!strcmp(rem1,rem2))
{
printf("SIMILARn");
}
else printf("DIFFERENTn");
}
}
return 0;
}
- mac下利用Breakpad的dump文件进行调试
- OpenCV3.2集成Android Studio2.2开发配置
- laravel中使用gulp打包发布前端部分
- Spring的编程式事务和声明式事务
- Java过滤器Filter的使用详解
- 基于积分图的二值图像膨胀算法实现
- Java监听器Listener的使用详解
- 图像各向异性滤波
- Python爬虫实战-抓取《盗墓笔记》所有章节及链接
- JSP 和 Servlet 的工作原理和生命周期
- Python OpenCV像素操作
- 别人在抢红包,而程序员在研究微信红包的算法实现
- C++模板类与Qt信号槽混用
- Python3.6+OpenCV3.3开发环境搭建
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法