题意是给你几组字符串,从中找出在每个字符串中都出现的字母,可以重复。比如说,AAA,和AA,那么结果就是AA。
#include <iostream>
#include <cmath>
#include <algorithm>
#include <cstdio>
#include <string.h>
#define mm(a) memset(a, 0, sizeof(a))
using namespace std;
int main()
{
char s[20];
int ans[26], tem[26];
int T, n;
scanf("%d", &T);
while(T--)
{
scanf("%d", &n);
getchar();
for(int i = 0; i < 26; i++)
ans[i] = 20;
while(n--)
{
mm(s);mm(tem);
gets(s);
for(int i = 0; i < 12; i++)
tem[s[i] - 'A'] ++;
for(int i = 0; i < 26; i ++)
ans[i] = min(ans[i], tem[i]);
}
for(int i = 0; i < 26; i++)
{
while(ans[i] --)
putchar(i + 'A');
}
putchar('\n');
}
return 0;
}