Anagrams问题
来源:互联网 发布:手机视频缓存软件 编辑:程序博客网 时间:2024/06/14 09:21
Anagrams问题
Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”和“MinOR”都是Anagrams。
编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams。每一个单词的长度不会超过80个字符,而且是大小写无关的。
输入格式:输入有两行,分别为两个单词。
输出格式:输出只有一个字母Y或N,分别表示Yes和No。
#include <iostream>#include<stdio.h>#include"stdlib.h"#include"ctype.h"#include"string.h"using namespace std;int char_count[26]={0};struct ca{ char ch; int a;};int main(){ int yes=1; ca c[80]={0}; char a[80]={0},b[80]={0}; cin>>a>>b; for(int i=0;i<strlen(a);i++) { c[i].ch=a[i]; } for(int i=0;i<strlen(a);i++) { for(int j=0;j<strlen(a);j++) if(isalpha(a[i]))//isalpha是ctype里判断是否为字母的函数 { a[i] = tolower(a[i]);//tolower是ctype里大小字母转换函数 if(c[i].ch == a[j]) c[i].a++; // b[i] = tolower(b[i]); // char_count[a[i]-'a']++; } } /*for(int i=0;i<strlen(a);i++) { cout<<c[i].ch<<" "<<c[i].a<<endl; }*/ /* for(int j=0;j<80;j++) { cout<<char_count[j]<<endl; }*/ for(int i=0;i<strlen(a);i++) { int n=0; for(int j=0;j<strlen(b);j++) { if(c[i].ch==b[j]) { n++; } } //cout<<n; if(c[i].a!=n/*||char_count[a[i]-'a']!=n*/) { cout<<"N"; return 0; } } cout<<"Y"; return 0;// cout<<a<<b;}
0 0
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- Anagrams问题
- 算法训练 Anagrams问题
- Anagrams问题 ---- 蓝桥杯
- 蓝桥杯之Anagrams问题
- 算法训练 Anagrams问题
- 蓝桥杯试题 Anagrams问题
- 蓝桥杯 - Anagrams问题
- 变位词问题/Anagrams
- React Native使用AsyncStorage本地持久化
- 使用腾讯云服务器和个人域名外加WordPress和WDCP建立个人博客的过程
- Android自定义View和ViewGroup
- ubuntu16下编译并安装opencv2.4.9(附卸载方式)
- OpenCV生成点集的Delaunay剖分和Voronoi图
- Anagrams问题
- MySQL定位执行效率低的SQL语句(Windows系统下)
- 【OpenCV学习笔记】一、开发环境配置(windows8.1+opencv3.2.0+vs2013)
- 【opencv学习之五】opencv调用摄像头用Qt的UI显示
- 【技巧】taskkill的用法
- git基本操作
- React Native 的绑定 this
- 转发和重定向的区别
- Hexo更换主题