zoukankan      html  css  js  c++  java
  • ACM_开心消消乐

    开心消消乐

    Time Limit: 2000/1000ms (Java/Others)

    Problem Description:

    大白最近喜欢上了开心消消乐,于是英语基础好的他准备让课文中英语句子也来充当游戏的主角。
    规则如下:输入两个字符串,从第一个字符串中删除第二个字符串所出现的字符(包括空格)
    1<=字符串的长度<=1000。

    Input:

    输入有多组数据
    每个测试数据占用两行,第一行为第一个字符串,第二行为第二个字符串。

    Output:

    若第一个字符串不能被全部消除则输出删除后的字符串(如删剩下空格则输出空格),否则输出“YES”(不包括双引号)。
    每个输出占一行

    Sample Input:

    They are students
    aeiou

    Sample Output:

    Thy r stdnts
    解题思路:这道题用java最好不过了,前提是要了解java的正则表达式,具体什么是正则表达式就问度娘吧。
    AC之java代码:
     1 import java.util.Scanner;
     2 public class Main {
     3     public static void main(String[] args) {
     4             Scanner scan = new Scanner(System.in);
     5             while(scan.hasNext()){
     6                 String obj=scan.nextLine();
     7                 String str="["+scan.nextLine()+"]";
     8                 obj=obj.replaceAll(str,"");
     9                 if(obj.length()>0)System.out.println(obj);
    10                 else System.out.println("YES");
    11             }
    12     }
    13 }

     AC之C++代码(map容器,简单过):

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int main(){
     4     string s1,s2;
     5     while(getline(cin,s1)&&getline(cin,s2)){
     6         map<char,bool> mp;
     7         bool flag=false;
     8         for (int i=0;s2[i]!='';++i)mp[s2[i]]=true;
     9         for (int i=0;s1[i]!='';++i)
    10             if(!mp[s1[i]]){cout<<s1[i];flag=true;}//如果没有该字母,则直接输出该字符
    11         if(flag)cout<<endl;
    12         else cout<<"YES"<<endl;
    13     }
    14     return 0;
    15 }
  • 相关阅读:
    eval()用法
    TTL查看目标的操作系统
    Windows Mobile里用SQLite的 Pinvoke DLL "SQLite.Interop.DLL 异常处理
    创建56个民族的sql语句
    RSS 入门简介
    NAT 网络地址转换
    ARP 攻击
    Python核心数据类型——列表
    Python核心数据类型——字符串
    Linux下 PyDev + Eclipse安装方法
  • 原文地址:https://www.cnblogs.com/acgoto/p/9166584.html
Copyright © 2011-2022 走看看