D. Cloud of Hashtags

1119 ワード

タイトル:
非減算文字列のセットであることを保証します.連続する接尾辞のみ削除
考え方:
後ろから文字を減らします.暴力でいいです.
とても水です.しかしCを终えてアニメを见に行きました.
#include 
#include 
#include 
#include 
#include 
const int maxn=1e6+5;

using namespace std;
string str[maxn];
int n ;
int a[maxn];

void solve(int pos)
{
    for(int i = 1 ; i < maxn; i++)
    {
        if(i == a[pos]+1)
            return;
        if(i == a[pos+1]+1)
        {
            a[pos] = a[pos+1];
            return;
        }
        if(str[pos][i] > str[pos+1][i])
        {
            a[pos] = i-1;
            return;
        }
        else if(str[pos][i] < str[pos+1][i])
            return;
    }
}

int main()
{
    cin>>n;
    for(int i = 1; i <= n; i++)
    {
        cin>>str[i];
        a[i]=(str[i].size())-1;
    }
    for(int i = n-1 ; i >= 1; i--)
        solve(i);
    for(int i = 1; i <=n ; i++)
    {
        for(int j = 0; j <=a[i]; j++)
            cout<< str[i][j];
        cout<< "
"; } }