CF987A Infinity Gauntlet 模拟
You took a peek on Thanos wearing Infinity Gauntlet. In the Gauntlet there is a place for six Infinity Gems:
- the Power Gem of purple color,
- the Time Gem of green color,
- the Space Gem of blue color,
- the Soul Gem of orange color,
- the Reality Gem of red color,
- the Mind Gem of yellow color.
Using colors of Gems you saw in the Gauntlet determine the names of absent Gems.
In the first line of input there is one integer n
(0≤n≤6
) — the number of Gems in Infinity Gauntlet.
In next n
lines there are colors of Gems you saw. Words used for colors are: purple, green, blue, orange, red, yellow. It is guaranteed that all the colors are distinct. All colors are given in lowercase English letters.
In the first line output one integer m
(0≤m≤6
) — the number of absent Gems.
Then in m
lines print the names of absent Gems, each on its own line. Words used for names are: Power, Time, Space, Soul, Reality, Mind. Names can be printed in any order. Keep the first letter uppercase, others lowercase.
4
red
purple
yellow
orange
2
Space
Time
0
6
Time
Mind
Soul
Power
Reality
Space
In the first sample Thanos already has Reality, Power, Mind and Soul Gems, so he needs two more: Time and Space.
In the second sample Thanos doesn't have any Gems, so he needs all six.
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstdlib>
#include<cstring>
#include<string>
#include<cmath>
#include<map>
#include<set>
#include<vector>
#include<queue>
#include<bitset>
#include<ctime>
#include<deque>
#include<stack>
#include<functional>
#include<sstream>
//#include<cctype>
//#pragma GCC optimize(2)
using namespace std;
#define maxn 900005
#define inf 0x7fffffff
//#define INF 1e18
#define rdint(x) scanf("%d",&x)
#define rdllt(x) scanf("%lld",&x)
#define rdult(x) scanf("%lu",&x)
#define rdlf(x) scanf("%lf",&x)
#define rdstr(x) scanf("%s",x)
typedef long long ll;
typedef unsigned long long ull;
typedef unsigned int U;
#define ms(x) memset((x),0,sizeof(x))
const long long int mod = 1e9 + 7;
#define Mod 1000000000
#define sq(x) (x)*(x)
#define eps 1e-3
typedef pair<int, int> pii;
#define pi acos(-1.0)
//const int N = 1005;
#define REP(i,n) for(int i=0;i<(n);i++)
typedef pair<int, int> pii;
inline ll rd() {
ll x = 0;
char c = getchar();
bool f = false;
while (!isdigit(c)) {
if (c == '-') f = true;
c = getchar();
}
while (isdigit(c)) {
x = (x << 1) + (x << 3) + (c ^ 48);
c = getchar();
}
return f ? -x : x;
} ll gcd(ll a, ll b) {
return b == 0 ? a : gcd(b, a%b);
}
int sqr(int x) { return x * x; } /*ll ans;
ll exgcd(ll a, ll b, ll &x, ll &y) {
if (!b) {
x = 1; y = 0; return a;
}
ans = exgcd(b, a%b, x, y);
ll t = x; x = y; y = t - a / b * y;
return ans;
}
*/
int n;
map<string, string>mp;
map<string, int>mp2;
string ss[10];
int main() {
//ios::sync_with_stdio(0);
mp["purple"] = "Power"; mp["green"] = "Time";
mp["blue"] = "Space"; mp["orange"] = "Soul";
mp["red"] = "Reality"; mp["yellow"] = "Mind";
rdint(n);
ss[1] = "red"; ss[2] = "blue"; ss[3] = "yellow";
ss[4] = "purple"; ss[5] = "green"; ss[6] = "orange";
for (int i = 1; i <= n; i++) {
string tmp; cin >> tmp;
mp2[tmp] = 1;
}
cout << 6 - n << endl;
for (int i = 1; i <= 6; i++) {
if (!mp2[ss[i]]) {
cout << mp[ss[i]] << endl;
}
}
return 0;
}
最新文章
- WINFORM时间控件(DATATIMEPICKER)的显示格式设置
- Docker容器入门
- 转一篇dudu大人的文章:程序员,用NuGet管理好你的包包
- Android 布局之TableLayout
- LR(0)语法分析
- 如何使用Linux命令dhclient
- rcp命令
- Appnium+python实现手势密码为什么总是报错
- [docker]coreOS与atomic对照
- oracle动态注冊參数local_listener
- require include 一个隐藏的用法:作用域。
- Scriplet的三种代码
- 企业级LNMP分离式部署
- Lab 7-1
- unity中鼠标左键控制摄像机视角上下左右移动
- STM32 printf()函数和scanf()函数重定向到串口
- .NetCore下使用IdentityServer4 &; JwtBearer认证授权在CentOS Docker容器中运行遇到的坑及填坑
- es修改数据类型
- js 调用 手机 相机摄像机麦克风
- debian 安装使用NTP