取字符
来源:互联网 发布:浙江省高中网络选修课 编辑:程序博客网 时间:2024/05/23 19:29
Q:
从标准输入读入一个由字母构成的串(不大于30个字符)。
从该串中取出3个不重复的字符,求所有的取法。
取出的字符,要求按字母升序排列成一个串。
不同的取法输出顺序可以不考虑。
例如:
输入:
abc
则输出:
abc
输入:
abcd
则输出:
abc
abd
acd
bcd
输入:
abcaa
则输出:
abc
A:
>>输入,一个字符只记载一次(alpha[26])
>>因为只要取三个字符,就直接来了三重循环,结果上看是ok的。但应该还有更高效的解法
#include "stdio.h"#include "windows.h"#include <string.h>char str[31]="0",count[27]="0";int alpha[26]={0};int main (void){while(scanf("%s",str)){int i,j,k,check=1,t=0;int m=strlen(str);for(i=0; i<m; i++){if(str[i]>=97 && str[i]<=122){if(!alpha[str[i]-97])alpha[str[i]-97]=1;}else if(str[i]>=65 &&str[i]<=90){if(!alpha[str[i]-65])alpha[str[i]-65]=1;}else{check=0;}}if(check=0)continue;for(i=0; i<26; i++)if(alpha[i]){count[t]=97+i;t++;}for(i=0; i<t-2; i++)for(j=i+1; j<t-1; j++)for(k=j+1; k<t; k++)printf("%c%c%c\n",count[i],count[j],count[k]);memset(alpha, 0, sizeof(alpha));memset(count, 0, sizeof(count));}system("pause");return (0);}
0 0
- 取字符
- 取字符
- 取字符
- 中英文字符切取
- 取属性字符
- 戴取字符用法
- 取字符长度
- SQL取最后字符
- C++取随机字符
- 字符中的英文切取
- 取字符好用例子
- 字符取中en长度
- MS SQLSERVER 取字符函数
- 从string逐个取字符
- 任取字符的组合
- 取逗号之间的字符
- 字符与数字取模...
- EL表达式取字符问题
- eclipse中无法新建Android工程 出现问题:Plug-in org.eclipse.ajdt.ui was unable to load
- Shell+Linux命令实现日志分析
- List接口简单示例
- 关于leetcode中游戏相关的几道题。
- Java Concurrency的系列文章
- 取字符
- Scrapy入门教程
- Grab Cut学习笔记3
- archlinux 安装有道词典
- GridView中合并单元格
- 使用System.arraycopy()实现数组之间的复制
- 安卓高级编程总结:bitmap内存优化
- linux图形编程基础
- Gradle 导入开源工程 常见问题解决方法(持续更新中)