1 条题解
-
0
题意:
观察样例,可以发现各各动物之间的特点有相同也有不相同的。而题目求的是最大值,所以只需要比较每两个动物之间,相同特点的数量,最后比较出最大值加一。因为答案只为一个动物,所以需要加上另一个动物没有的特点。
思路:
看下题,发现 ,.
于是直接就可以联想到暴力解题。
-
动物名称没有用处,所以只输入不用存储。但是 和动物特点需要存储,因为后面需要进行比较。
-
每两个动物之间进行比较,比较出某两个动物之间,特点相同数最多的值。
-
将这个值 .
按照这个思路,只需要 个循环就足够了,所以完全不用担心超时。
#include <bits/stdc++.h> using namespace std; string a[110][110]; int k[110]; int main() { int n; cin>>n; for(int i=1;i<=n;i++) { string s; cin>>s>>k[i]; for(int j=1;j<=k[i];j++) cin>>a[i][j]; } int maxn=0; for(int i=1;i<=n;i++) { for(int j=i+1;j<=n;j++) { int ans=0; for(int z=1;z<=k[i];z++) for(int l=1;l<=k[j];l++) if(a[i][z]==a[j][l]) ans++; if(maxn<=ans) maxn=ans; } } cout<<maxn+1<<endl; return 0; }建议评橙
-
- 1
信息
- ID
- 6965
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 9
- 标签
- 递交数
- 175
- 已通过
- 10
- 上传者