Codeforces Ronda # 616 (Div. 2) D. irreducible anagramas

Título Fuente: Click
Aquí Insertar imagen Descripción
subserie de una serie puede dividirse en una serie de Q no es el caso.

Primero lentamente para analizar el tema:
de hecho, hay que dejar un sin condiciones al menos reconstituir el mismo prefijo.
1. Cuando l == r cuando simplemente no se puede dividir dos es definitivamente sí.
2. Si sólo hay una cadena de palabras es claramente Nº (Aquí, excluyendo el caso en el que l = r)
mayor consideración: s y t, al principio y al final de la misma no pueden ser fijos, autónomo una vez que la misma sección otros caracteres. Aquí Insertar imagen Descripción
Véase, por ejemplo, en s [n] es en el futuro para encontrar un rasguño con la misma correspondiente a la misma y no antes del emparejado. De s [0] Inicio, con t s [0] debe tratar de poner de nuevo el mismo, por lo que no se puede meter intercalados emparejado s y t, una gran cantidad de líneas longitudinales hasta el final de t, necesita ser conectado entre la esto asegura que fuera.
3. Usted puede saber, lo mismo que cuando sólo dos cuerdas cuando la cabeza y la cola deben ser el número uno
4. Cuando hay tres o más pueden ser necesarios.

#include <bits/stdc++.h>
#define MAX_len 50100*4
using namespace std;
typedef long long ll;
char s[200100];
int dp[200100][26]={0};
int main()
{
    s[0]='a';
    scanf("%s",s+1);
    int len=strlen(s);
    len--;
    for(int i=1;i<=len;i++)
    {
        for(int j=0;j<26;j++)
            dp[i][j]=dp[i-1][j];
        dp[i][s[i]-'a']++;
    }
    int q;
    cin>>q;
    while(q--)
    {
        int l,r;
        scanf("%d %d",&l,&r);
        if(l==r)
        {
            printf("Yes\n");
            continue;
        }
        int cnt=0;
        for(int i=0;i<26;i++)
        {
            if(dp[r][i]-dp[l-1][i]>0)
                cnt++;
        }
        if(cnt==1||(s[l]==s[r]&&cnt==2))
        {
            printf("No\n");
            continue;
        }
        {
            printf("Yes\n");
            continue;
        }

    }
    return 0;
}

Publicado 72 artículos originales · ganado elogios 19 · vistas 7507

Supongo que te gusta

Origin blog.csdn.net/weixin_43958964/article/details/104224289
Recomendado
Clasificación