列表

详情


NC207993. 皮(A)卡(C)皮(M)~

描述

最近小梁的皮卡丘迷上了一款叫做ACM的游戏,它想把小梁的所有密码都改成包含有A、C、M这三个字母的大写字母字符串,
现在她需要检查之前的她拥有的密码中少了哪个字母(顺序无关,至多只会缺少一个字母,别问为什么问就是百万伏特!)。
如果三个字母出现过则输出

输入描述

第一行为一个整数
第二至T+1行,每一行为一个字符串s()。
(代表字符串 s 的长度)。

输出描述

输出 T 行,每行为一个字母,如果不存在缺少字母输出 

示例1

输入:

1
SAFFDSAGFHGFDHREQITUODGJFDGMNQTFDOIUQJHDLSAJFIOQWUIJFDSDJH

输出:

C

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++14(g++5.4) 解法, 执行用时: 4ms, 内存消耗: 456K, 提交时间: 2020-06-20 13:20:48

#include<bits/stdc++.h>
using namespace std;
int t;
string a;
int main()
{
	
	cin>>t;
	while(t--)
	{
		map<char,int>mp;
		cin>>a;
		for(int i=0;i<a.size();i++)mp[a[i]]++;
		if(mp['C']==0)cout<<'C';
		if(mp['A']==0)cout<<'A';
		if(mp['M']==0)cout<<'M';
		if(mp['A']&&mp['C']&&mp['M'])cout<<-1<<endl;
	}
}

C++ 解法, 执行用时: 3ms, 内存消耗: 444K, 提交时间: 2022-03-08 21:35:27

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int t;
	cin>>t;
	while(t--){
		string s;
		cin>>s;
		int a,c,m;
		a=s.find("A");
		c=s.find("C");
		m=s.find("M");
		if(a==-1) cout<<"A\n";
		else if(c==-1) cout<<"C\n";
		else if(m==-1) cout<<"M\n";
		else cout<<"-1\n";
	}
	return 0;
}

C(clang 3.9) 解法, 执行用时: 3ms, 内存消耗: 376K, 提交时间: 2020-06-22 17:50:20

#include<stdio.h>
#include<string.h>
int main()
{
	int T;
	scanf("%d",&T);
	char b[222];
	while(T--){
		scanf("%s",b);
		if(strstr(b,"A")==0)
		printf("A");
		else if(strstr(b,"C")==0)
		printf("C");
		else if(strstr(b,"M")==0)
		printf("M");
		else
		printf("-1");
	}
	return 0;
}

Python3 解法, 执行用时: 34ms, 内存消耗: 4596K, 提交时间: 2022-04-10 13:57:40

t=int(input())
for T in range(t):
    st=input()
    k="-1"
    if "A" not in st:
        k="A"
    elif "C" not in st:
        k="C"
    elif "M" not in st:
        k="M"
    print(k)

pypy3 解法, 执行用时: 93ms, 内存消耗: 28592K, 提交时间: 2022-04-11 01:02:13

t = int(input())
for i in range(0,t):
  s = input()
  if 'A' not in s:
    print('A')
  elif 'C' not in s:
    print('C')
  elif 'M' not in s:
    print('M')
  else:
    print(-1)

上一题