2020牛客暑期多校训练营(第八场)Game SET
传送门:Game SET
题意
题解
代码
1 #include<bits/stdc++.h>
2 using namespace std;
3
4 map<string,int>p;
5 int a[10010][10];
6
7 int main()
8 {
9 p["*"]=0;
10 p["one"]=1;
11 p["two"]=2;
12 p["three"]=3;
13 p["diamond"]=1;
14 p["squiggle"]=2;
15 p["oval"]=3;
16 p["solid"]=1;
17 p["striped"]=2;
18 p["open"]=3;
19 p["red"]=1;
20 p["green"]=2;
21 p["purple"]=3;
22
23 int t;
24 int tt=1;
25 cin>>t;
26 while(t--){
27 int n;
28 cin>>n;
29 string s;
30 for(int i=0;i<n;i++){
31 cin>>s;
32 string ss;
33 int cnt=0;
34 for(int j=0;j<s.size();j++){
35 if(s[j]=='[') ss="",cnt++;
36 else if(s[j]==']') a[i+1][cnt]=p[ss];
37 else ss+=s[j];
38 }
39 }
40 cout<<"Case #"<<tt++<<": ";
41 int flag=0;
42 for(int i=1;i<=n;i++){
43 for(int j=i+1;j<=n;j++){
44 for(int k=j+1;k<=n;k++){
45 int g=0;
46 for(int l=1;l<=4;l++){
47 if(a[i][l]==0||a[j][l]==0||a[k][l]==0) continue;
48 if(a[i][l]==a[j][l]&&a[i][l]==a[k][l]) continue;
49 if(a[i][l]!=a[k][l]&&a[i][l]!=a[j][l]&&a[j][l]!=a[k][l]) continue;
50 g=1;
51 break;
52 }
53 if(!g){
54 cout<<i<<' '<<j<<' '<<k<<endl;
55 flag=1;
56 }
57 if(flag) break;
58 }
59 if(flag) break;
60 }
61 if(flag) break;
62 }
63 if(!flag) cout<<-1<<endl;
64 }
65 return 0;
66 }
2020牛客暑期多校训练营(第八场)Game SET的更多相关文章
- 2020牛客暑期多校训练营(第一场)H Minimum-cost Flow
Minimum-cost Flow 题目:给n个点,m条边.接下来m行包含(a,b,c),即a,b之间有单位流量代价为c的边.接下来有q个问题,每个问题给定(x,y),即假设每条边的容量为x/y时,从 ...
- 2020牛客暑期多校训练营(第二场) Boundary
传送门:Boundary 题意:给你n个点的坐标,问最多有多少个点可以在同一个圆上,(0,0)必须在这个圆上. 题解:三个点确定一个圆,所以暴力枚举两个点和(0,0)组成的圆,如果三个点不共线的话, ...
- 2020牛客暑期多校训练营(第一场)Easy Integration
传送门:J. Easy Integration 题意:给你n,求这个积分,最后的结果分子是记为p,分母记为q. 求(p*q-1)mod 998244353. 题解:比赛完看到巨巨说这是贝塔函数,我一搜 ...
- 2020牛客暑期多校训练营 (第二场) All with Pairs
传送门:All with Pairs 题意:给你n个字符串,求出,f(si,sj)的意思是字符串 si 的前缀和字符串 sj 后缀最长相等部分. 题解:先对所有的字符串后缀hash,用map记录每个h ...
- 2020牛客暑期多校训练营(第二场)Fake Maxpooling
传送门:Fake Maxpooling 题意:给出矩阵的行数n和列数m,矩阵 Aij = lcm( i , j ) ,求每个大小为k*k的子矩阵的最大值的和. 题解:如果暴力求解肯定会t,所以要智取 ...
- 2020牛客暑期多校训练营(第二场) F.Fake Maxpooling (单调队列)
题意:有一个\(n\)x\(m\)的矩阵,\(A_{i,j}=lcm(i,j)\),对于每个\(k\)x\(k\)的子矩阵,其最大元素贡献给答案,求答案的最大值. 题解:矩阵构成我们直接\(i*j/g ...
- 2019牛客暑期多校训练营(第九场)A:Power of Fibonacci(斐波拉契幂次和)
题意:求Σfi^m%p. zoj上p是1e9+7,牛客是1e9: 对于这两个,分别有不同的做法. 前者利用公式,公式里面有sqrt(5),我们只需要二次剩余求即可. 后者mod=1e9,5才 ...
- 2019牛客暑期多校训练营(第一场)A题【单调栈】(补题)
链接:https://ac.nowcoder.com/acm/contest/881/A来源:牛客网 题目描述 Two arrays u and v each with m distinct elem ...
- 2019牛客暑期多校训练营(第一场) B Integration (数学)
链接:https://ac.nowcoder.com/acm/contest/881/B 来源:牛客网 Integration 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 5242 ...
- 2019牛客暑期多校训练营(第一场) A Equivalent Prefixes ( st 表 + 二分+分治)
链接:https://ac.nowcoder.com/acm/contest/881/A 来源:牛客网 Equivalent Prefixes 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/ ...
随机推荐
- LeetCode167 两数之和 II - 输入有序数组
给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数. 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2. 说明: 返回的下标值 ...
- three.js 之cannon.js物理引擎
今天郭先生说的是一个物理引擎,它十分小巧并且操作简单,没错他就是cannon.js.这些优点都源自于他是基于js编写的,对于js使用者来说cannon.js拥有其他物理引擎没有的纯粹性.从学习成本来看 ...
- 【Linux】nginx详细说明
Nginx的配置文件nginx.conf配置详解如下: user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目 ...
- VS2019项目docker启动且访问SQLSERVER数据库配置
VS2019编译.调试的Blazor纯前台项目,使用控制台启动,去连接纯后台的API项目,使用docker启动,并且通过EFCore访问SQLSERVER数据库,有几个地方需要修改配置: 一.前台连后 ...
- 【Azure Developer】解决Azure Key Vault管理Storage的示例代码在中国区Azure遇见的各种认证/授权问题 - C# Example Code
问题描述 使用Azure密钥保管库(Key Vault)来托管存储账号(Storage Account)密钥的示例中,从Github中下载的示例代码在中国区Azure运行时候会遇见各种认证和授权问题, ...
- LeetCode530. 二叉搜索树的最小绝对差
题目 又是常见的BST,要利用BST的性质,即中序遍历是有序递增序列. 法一.中序遍历 1 class Solution { 2 public: 3 vector<int>res; 4 v ...
- centos7安装vsftpd最大的坑
1.检查用户和密码没有错误2.vsftpd.conf配置没有错误3.检查/etc/vsftpd/vsftpd.conf 里面pam_service_name =vsftpd4.终极boss查看vim ...
- SAP 中session和外部断点设置的区别
1 Session Breakpoints:只在当前user session的所有main session中有效 2 External Breakpoints 在abap editor或事务SICF中 ...
- 容器编排系统K8s之包管理器helm基础使用(二)
前文我们介绍了helm的相关术语和使用helm安装和卸载应用,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14305902.html:今天我们来介绍下自定义 ...
- 面试官:你说说ReentrantLock和Synchronized区别
大家好!又和大家见面了.为了避免面试尴尬,今天同比较通俗语言和大家聊下ReentrantLock和Synchronized区别! 使用方式 Synchronized可以修饰实例方法,静态方法,代码块. ...