每日一题,是否存在(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; ...
随机推荐
- .NetCore 项目在服务器打包失败解决
错误描述:NuGet警告 NU3037 NU3028 原因:Nuget无法访问到json所在的网络 2021年1月31日更新:更好的方法 把自动生成的Dockerfile内的AS build 替换成官 ...
- 使用HttpRunner3+Allure+Jenkins实现Web接口自动化测试
陆续给不同项目做了Web接口自动化测试,在尝试不同方法的同时会有新的体会.最近用到了HttpRunner3,本文将记录使用HttpRunner3+Allure+Jenkins在项目中快速实现Web接口 ...
- NOI2021 游记
day -10 开始一天一场NoIP模拟赛,前几场每天挂分很厉害(这么说是因为后面的以前做过) 自省选惨挂以后国赛的知识点就几乎没怎么摸过了,考前发现连manacher都不会写了,反演?又陷入&quo ...
- -bash: ulimit: core file size: cannot modify limit: Operation not permitted
一.问题描述 使用普通用户执行某个软件加载环境变量时报错 -bash: ulimit: core file size: cannot modify limit: Operation not permi ...
- vue开发 回到顶部操作
第一种:使用vue-router history 模式下,用scrollBehavior 方法实现. 1 export default new Router({ 2 mode: 'history', ...
- 2.1Java基础
2.1.9面向对象的三大特性(携程): 封装:把一个对象的属性隐藏在对象内部,外部对象不能直接访问这个对象的内部信息.但是可以提供一些可以被外界访问的方法来操作属性.就比如我们常常创建一个类,把他的属 ...
- POJ2251——Dungeon Master(三维BFS)
和迷宫问题区别不大,相比于POJ1321的棋盘问题,这里的BFS是三维的,即从4个方向变为6个方向. 用上队列的进出操作较为轻松. #include<iostream> #include& ...
- error: subscripted value is neither array nor pointer问题解决
在运行程序的时候报错:error: subscripted value is neither array nor pointer 原因分析:下标值不符合数组或指针要求,即操作的对象不允许有下标值. 出 ...
- 后期静态绑定在PHP中的使用
什么叫后期静态绑定呢?其实我们在之前的文章PHP中的static中已经说过这个东西了.今天我们还是再次深入的理解一下这个概念. 首先,我们通过一段代码来引入后期静态绑定这一概念: class A { ...
- Mixed Content: The page at 'xxx' was loaded over HTTPS, but requested an insecure resource 'xxx'.
HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉的.在HTTPS页面里通过AJAX的方式请求HTTP资源,也会被直接block掉的. Mixed Content: T ...