PTA Kuchiguse (20 minutos)

Es la mente humana la que libera la luz infinita, y también es la mente humana la que crea la oscuridad ilimitada. La luz y la oscuridad se entrelazan y luchan juntas. Este es el mundo por el que estamos nostálgicos y desamparados.

El idioma japonés es conocido por sus partículas de terminación de oraciones. La preferencia personal de tales partículas puede considerarse un reflejo de la personalidad del hablante. Tal preferencia se llama "Kuchiguse" y a menudo se exagera artísticamente en Anime y Manga. Por ejemplo, la partícula de terminación de oración artificial "nyan ~" se usa a menudo como un estereotipo para personajes con una personalidad felina:

  • Itai nyan ~ (Duele, nyan ~)

  • Ninjin wa iya nyan zanahorias (odio las zanahorias, nyan ~)

Ahora, dadas algunas líneas habladas por el mismo personaje, ¿puedes encontrar su Kuchiguse?

Especificación de entrada:

Cada archivo de entrada contiene un caso de prueba. Para cada caso, la primera línea es un número entero N (2≤N≤100). A continuación se encuentran N líneas de archivo de 0 ~ 256 (inclusive) caracteres de longitud, cada una representando la línea hablada de un personaje. Las líneas habladas distinguen entre mayúsculas y minúsculas.

Especificación de salida:

Para cada caso de prueba, imprima en una línea el kuchiguse del carácter, es decir, el sufijo común más largo de todas las N líneas. Si no existe tal sufijo, escriba  nai.

Entrada de muestra 1:

3
Itai nyan~
Ninjin wa iyadanyan~
uhhh nyan~

Salida de muestra 1:

nyan~

Entrada de muestra 2:

3
Itai!
Ninjinnwaiyada T_T
T_T

Salida de muestra 2:

nai
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <stack>
#include <queue>
#include <set>
#include <map>
#include <vector>
#include <ctime>
#include <cctype>
#include <bitset>
#include <utility>
#include <sstream>
#include <complex>
#include <iomanip>
#include<climits>//INT_MAX
#define PP pair<ll,int>
#define inf 0x3f3f3f3f
#define llinf 0x3f3f3f3f3f3f3f3fll
#define dinf 1000000000000.0
#define PI 3.1415926
typedef long long ll;
using namespace std;
int const mod=1e9+7;
const int maxn=3e5+10;
int n;
string jg;
int main()
{
    scanf("%d\n", &n);
    for (int i = 0; i < n; i++)
    {
        string s;
        getline(cin, s);
        reverse(s.begin(), s.end());
        if (i==0)
        {
            jg=s;
            continue;
        }
        else
        {
            for(int j=0; j<min(jg.length(), jg.length()); j++)
            {
                if(jg[j]!=s[j])
                {
                    jg=jg.substr(0, j);
                    break;
                }
            }
        }
    }
    reverse(jg.begin(),jg.end());
    if(jg.length()==0)
		printf("nai");
    else 
		cout<<jg<<endl;
    return 0;
}

 

Supongo que te gusta

Origin blog.csdn.net/weixin_44170305/article/details/108380027
Recomendado
Clasificación