每日一题,是否存在(c语言)
每日一题:1.是否存在
是否存在
描述
猫咪非常喜欢饼干,尤其是字母饼干。现在,她得到一些字母饼干,她希望选择他们中的一些拼写某些单词。
你的任务是确定她是否可以拼出自己想要的单词。
输入
输入包含若干测试用例,对于每组测试用例:
第一行输入一个字符串S1(1 <= 长度 <= 100),代表她拥有的字母饼干。
第二行输入一个字符串S2(1 <= 长度 <= 100),代表她想要拼出的单词。
输出
对于每个测试用例,如果她可以拼出单词,请输出“Yes”,否则输出“No”。
#include<stdio.h>
int main()
{int a,b,c;
while(~scanf("%d%d%d",&a,&b,&c))//去地址符号没写
{if(a>b)
{if(a>c)
printf("1\n");
else
printf("3\n");
}
else
{if(b>c)
printf("2\n");
else
printf("3\n");
}
}
}
输入样例 1
ARDHPYP
HAPPY
ARDHPY
HAPPY
输出样例 1
Yes
No
分析:首先我们思考要拼出想要的单词,那字符串s2的每个字符都要在字符串s1中找到,所以从字符串S2的第一个字符以后都要和字符串s1依次比较( 字符串s2为外循环,字符串s2为内循环),直到和字符串s1的其中一个字符相等,就结束本次的循环(内循环),再重新进入外循环。我们需要引入一个变量
为了计算相等的次数,为了方便后面Yes和No的输出。还有一个要考虑的点,字符串s2和字符串s1里有相同的字符时,看样例1,怎么让HAPPY的第二个P在遍历字符串ARDHPYP遇到第一个P,设置计数的变量不计数呢或者说让他们不相等呢。那么我们可以把字符串ARDHPYP第一个P,在完成计数后,给他赋值,这里我是把字符#
赋给他。最后比较变量是否和s2的长度相等。如果相等,输出“Yes”,否则输出“No”。
用到的知识点:for循环的嵌套,break语句的运用,字符串数组,字符串对函数的引用,if语句。
代码如下:
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,m,n,a;
char s1[100],s2[100];
while(~scanf("%s%s",s1,s2))
{
m=strlen(s2);
n=strlen(s1);
a=0;
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
if(s2[i]==s1[j])
{
a++;
s1[j]='#';
break;
}
}
}
if(a==m)
{
printf("Yes\n");
}
else
printf("No\n");
}
}
做题时犯的错误:没加break语句,就导致当有相同字符时会多计数,导致答案错误。
不足:没有完全分析理解清楚题目
新手小白,有错希望指出。
座右铭:路要朝前走,人往未来看
每日一题,是否存在(c语言)的更多相关文章
- 【JavaScript】【KMP】Leetcode每日一题-实现strStr()
[JavaScript]Leetcode每日一题-实现strStr() [题目描述] 实现 strStr() 函数. 给你两个字符串 haystack 和 needle ,请你在 haystack 字 ...
- 【python】Leetcode每日一题-位1的个数
[python]Leetcode每日一题-位1的个数 [题目描述] 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量). 示例1 ...
- Java实习生常规技术面试题每日十题Java基础(七)
目录 1. Java设计模式有哪些? 2.GC是什么?为什么要有GC? 3. Java中是如何支持正则表达式. 4.比较一下Java和JavaSciprt. 5.Math.round(11.5) 等于 ...
- Java实习生常规技术面试题每日十题Java基础(六)
目录 1.在Java语言,怎么理解goto. 2.请描述一下Java 5有哪些新特性? 3.Java 6新特性有哪些. 4.Java 7 新特性有哪些. 5.Java 8 新特性有哪些. 6.描述Ja ...
- Java实习生常规技术面试题每日十题Java基础(四)
目录 1.String 和StringBuffer的区别. 2.数组有没有length()这个方法? String有没有length()这个方法? 3.final, finally, finalize ...
- Java实习生常规技术面试题每日十题Java基础(三)
目录 1.是否可以从一个static方法内部发出对非static方法的调用? 2.Integer与int的区别? 3.Overload和Override的区别.参数列表相同,返回值不同的方法,是否是重 ...
- Java实习生常规技术面试题每日十题Java基础(二)
目录 1. JAVA 的反射机制的原理. 2.静态嵌套类(Static Nested Class)和内部类(Inner Class)的不同? 3.如何将String类型转化成Number类型. 4.什 ...
- Java实习生常规技术面试题每日十题Java基础(一)
目录 1.Java 的 "一次编写,处处运行"如何实现? 2.描述JVM运行原理. 3.为什么Java没有全局变量? 4.说明一下public static void main(S ...
- 【Java每日一题】20170106
20170105问题解析请点击今日问题下方的"[Java每日一题]20170106"查看(问题解析在公众号首发,公众号ID:weknow619) package Jan2017; ...
随机推荐
- 机械硬盘换到SSD后系统引导报错代码0xc000000e
由于机械硬盘IO不够用,系统使用起来非常的缓慢,特意购买了新的SSD进行了替换.机械硬盘的IO在70左右,SSD的IO在1000-4000左右指普通消费SSD. 由于不想安装系统,就直接把机械硬盘的数 ...
- Django——实现评论功能(包括评论回复)
提示:(1)功能不全面,仅仅实现评论(2)样式简单 1.项目目录结构 2.模型 from django.db import models from django.contrib.auth.models ...
- 动环监控系统中B接口的实现
动环监控系统简述 1.术语介绍 1.1 省集中监控中心-Province Supervision Center(PSC) 面向多FSU管理的高级监控层次,即省集中监控中心,通过开放的数据协议,连接监控 ...
- kali linux 的基本命令
Kali Linux 命令集 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2)uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统 ...
- 面试HashMap你都扛不住,还想拿到offer?
当我们面试Java开发岗位时,面试官问的频率出现最多的问题,就是这个HashMap,不管是传统型公司还是互联公司,HashMap是必问的,所以作者爆肝整理了HashMap的23个问题以及答案,请查收! ...
- 浅谈VMware的NAT模式
什么是NAT模式?理论化的措辞我就不说了,我将结合本人平时的经验来简单的说明一下NAT模式,以及配置NAT模式时遇到的问题. 大家都知道,我们的电脑要想联网,需要与交换机连接,假设交换机的网关为192 ...
- windows中对文件进行排序
右键->排序方式->更多->选择需要的项目
- Python脚本运行出现语法错误:IndentationError:unexpected indent
对于py来说典型错误就是缩进,,烦不胜烦,整理一下解决方法:一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: Indentation ...
- Java中short和int的转换
例子[1]: 第一种情况: short a = 1; a = a + 1; // 这一步会报错 System.out.print(a); 编译器会报错,原因如下: 第二种情况: short a = 1 ...
- 基于Docker构建企业Jenkins CI平台