首页 > 编程语言 >团体程序设计天梯赛-练习集——L1-011 A-B

团体程序设计天梯赛-练习集——L1-011 A-B

时间:2025-01-18 22:58:05浏览次数:3  
标签:字符 num1 num2 011 天梯 L1 字符串 gets 输入

前言

相对来说,这道题就比较简单了,但是这道题整整有20分呢,巨肥

L1-011 A-B

本题要求你计算A−B。不过麻烦的是,A和B都是字符串 —— 即从字符串A中把字符串B所包含的字符全删掉,剩下的字符组成的就是字符串A−B。

输入格式:

输入在2行中先后给出字符串A和B。两字符串的长度都不超过10的4次方 ,并且保证每个字符串都是由可见的ASCII码和空白字符组成,最后以换行符结束。

输出格式:

在一行中打印出A−B的结果字符串。

输入样例:

I love GPLT!  It's a fun game!
aeiou

输出样例:

I lv GPLT!  It's  fn gm!

思路

OK,拿到这道题首先有一点点的懵逼,因为一开始输入有点问题,博主写代码就是一种无脑的方式,习惯了用一种方式,就一直这么干,然后用scanf输入就出现了问题,运行输出了一下,我靠,只输出了一个 I love,我就想,不能这么干,然后换掉了scanf,用了gets,因为gets可以输入空格,而scanf不可以。
然后呢,就开始考虑,怎么能删除掉下面的那些字符呢,读题的时候从上往下看,真的是没有思路,怎么办呢,不妨从下往上看看试试,我们可以先把需要删除掉的那些字符做一个标记,然后再第一行字符串里面遍历,没有被标记到的字符就按顺序输出就好了。
思路已经定好了,那我们就来看看代码

代码

#include <stdio.h>
#include <string.h>
int main()
{
    char num1[10001] = {0};
    char num2[10001] = {0};//两行字符串
    gets(num1);
    gets(num2);//输入
    int i;
    char num[256] = {0};//把所有字符存放到里面
    for(i = 0; i < strlen(num2);i++)//遍历第二行字符串
        num[num2[i]]=1;//做标记
    for(i = 0;i < strlen(num1);i++)//遍历第一行字符串
        if(num[num1[i]] == 0)//判断是否做了标记
            printf("%c",num1[i]);//输出
}

真的,就这么点代码,谁看不迷糊,呼呼干吧那就

以上所有代码均为自己编写,本人水平有限,如果有哪里出错或者有更好的解法可以与我私信或在评论区里进行讨论

上一题:团体程序设计天梯赛-练习集——L1-010 比较大小

标签:字符,num1,num2,011,天梯,L1,字符串,gets,输入
From: https://blog.csdn.net/shidisy/article/details/145234169

相关文章

  • P3518 [POI2011] SEJ-Strongbox
    P3518[POI2011]SEJ-StrongboxDescription有一个密码箱,\(0\)到\(n-1\)中的某些整数是它的密码。且满足:若\(a\)和\(b\)是它的密码,则\((a+b)\bmodn\)也是它的密码(\(a\),\(b\)可以相等)。某人试了\(k\)次密码,前\(k-1\)次都失败了,最后一次成功了。问,该密码箱最多有多......
  • [20250118]find命令文件统配符使用引号.txt
    [20250118]find命令文件统配符使用引号.txt--//网上看到的问题,实际上问题许多人包括我自己也经常会犯类似的错误。因为如果没有引号,bashshell会展开解释。--//通过一个简单例子说明问题:$mkdir202501$cd202501$toucha1.txt$toucha2.txt$echo*.txta1.txta2.txt$echo*......
  • 20250116 支付宝出现重大事故 有感
    事故20250116下午支付宝直接冲上微博热搜榜首,原因是在2025年01月16日14:40-14:45期间出现大量支付显示“政府补贴”减免字样。最开始我是在小红书上看到的相关内容,只是看到这个图片,心想这肯定是小红书暗广,撇了一眼就划过了。当“支付宝出现重大BUG”出现在微博头条时,才确信此事......
  • [20250117]记录下21c下使用gdb跟踪逻辑读遇到的问题.txt
    [20250117]记录下21c下使用gdb跟踪逻辑读遇到的问题.txt--//在21c下使用gdb跟踪逻辑读遇到的问题,困扰好几天,做一个记录。--//首先我以前写过1个gdb脚本跟踪逻辑读在11g下,使用遇到一些问题,发现21c下没有使用kteinpscan,kdifxs函数。--//我先注解这部分内容,测试看看。1.环境:SCOTT@boo......
  • 关于函数(20250117)
    补充递归调用的补充:无限制的递归调用不会产生死循环,而是在栈区空间中,被调函数“入栈(保护现场)”产生的返回值地址占满整个栈区空间,程序直接崩溃。数组作为参数传递,传递的是数组的首元素地址。字符串数组的末尾存在‘\0’,因此字符串数组作为函数参数时,不需要元素个数作为函数参......
  • PTA L1-010 比较大小
    本题要求将输入的任意3个整数从小到大输出。输入格式:输入在一行中给出3个整数,其间以空格分隔。输出格式:在一行中将3个整数从小到大输出,其间以“->”相连。输入样例:428输出样例:2->4->8#include<bits/stdc++.h>usingnamespacestd;voidfun(int&a,int&b,int......
  • SQL-按自定义格式进行编号的SQL自定义函数.090119
    生成格式如:DT.EMP.0000000001的自增emp_id,加入EmpBaseINfo表中。--生成格式如DT.EMP.0000000001  【Vegas Add】ALTERFUNCTION[dbo].[Get_EmpBaseInfo_AccountID](@RowIDasint)RETURNSnvarchar(50) as begin    declare@oidnvarchar(50)    dec......
  • 【天梯第11层】
    目录题目1:判断一个字符串是否是回文(忽略大小写)题目2:计算数组中所有偶数的平均值题目3:找出字符串中出现次数最多的字符宝子,你真的太牛啦!一路过关斩将,成功站在了Java基础1000题天梯的第十一层!想想之前的每一层挑战,你都完成得那么出色,积累了超多宝贵经验。这第十一层......
  • 团体程序设计天梯赛-练习集——L1-007 念数字
    前言这道题价值10分,题目不难,稍稍的有点逻辑,分值也不低,这种题拿下应该差不多L1-007念数字输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:0:ling1:yi2:er3:san4:si5:wu6:liu7:qi8:ba9:jiu输入格式:输入在......
  • Tomcat自动监听重启.250116
    1.bash脚本vim/home/sh/restart_tomcat.sh#!/bin/sh#configurations:Automaticmonitoringtomcatprocess,hunguptherestartoperation#author:AmadeusLANG="en_US.utf8"exportLANGexportPATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bi......