2015年10月25日 星期日

[HOJ] 317 體重問題

#include<cstdio>
#include<algorithm>
#define MAX 100005
using namespace std;
int n,m,w[MAX],ans[MAX],st,ed,mid;
char s[MAX];
int main(){
    scanf("%d%d",&n,&m);
    for(int i=0;i<m;i++)
        scanf("%d",&w[i]);
    scanf("%s",s);
    sort(w,w+m);
    for(int i=0;i<n-1;i++){
        if(s[i]=='L')mid--;
        if(s[i]=='R')mid++;
        ans[i+1]=mid;
        st=min(st,mid);
        ed=max(ed,mid);
    }
    if(ed-st+1>m)puts("No");
    else for(int i=0;i<n;i++)
        printf("%d\n",w[ans[i]-st]);
}

沒有留言:

張貼留言