码迷,mamicode.com
首页 > 其他好文 > 详细

才吉布提

时间:2017-07-14 11:54:17      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:test   ring   namespace   bsp   har   names   开始   return   img   

C - String Reconstruction

我只服这个题原字符串的范围,刚开始没注意一直wa,以为代码写错,后来网上找了份代码对拍,发现数据范围写小了,ki最大取到1e6,加上字符串最大1e6,所以范围是2e6。

技术分享
#include <bits/stdc++.h>
using namespace std;
const int maxn = 2e6+5;
char s[maxn];
char init[maxn];
int main()
{
    int n,k,pre,x;
    cin>>n;
    memset(init,0,sizeof(init));
    int maxlen = 0;
    for(int i=1;i<=n;i++)
    {
        cin>>s>>k;
        int slen = strlen(s);
        pre = -1,x;
        int startpos = 0;
        for(int j=1;j<=k;j++)
        {
            cin>>x;
            startpos = max(pre+1,x);
            for(int p=startpos-x;p<slen;p++)
            {
                init[p+x] = s[p];
            }
            pre = x+slen-1;
        }
        maxlen = max(maxlen,pre);
    }
    for(int i=1;i<=maxlen;i++)
    {
        if(init[i]==0)
        {
            init[i] = a;
        }
    }
    cout<<init+1<<endl;
    return 0;
}
Code

 

才吉布提

标签:test   ring   namespace   bsp   har   names   开始   return   img   

原文地址:http://www.cnblogs.com/littlepear/p/7169223.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!