麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

【Codeforces 733 C. Epidemic in Monstropolis】+ 模擬

2019-11-14 10:01:37
字體:
來源:轉載
供稿:網友

C. Epidemic in Monstropolis time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output

There was an epidemic in Monstropolis and all monsters became sick. To recover, all monsters lined up in queue for an appointment to the only doctor in the city.

Soon, monsters became hungry and began to eat each other.

One monster can eat other monster if its weight is strictly greater than the weight of the monster being eaten, and they stand in the queue next to each other. Monsters eat each other instantly. There are no monsters which are being eaten at the same moment. After the monster A eats the monster B, the weight of the monster A increases by the weight of the eaten monster B. In result of such eating the length of the queue decreases by one, all monsters after the eaten one step forward so that there is no empty places in the queue again. A monster can eat several monsters one after another. Initially there were n monsters in the queue, the i-th of which had weight ai.

For example, if weights are [1,?2,?2,?2,?1,?2] (in order of queue, monsters are numbered from 1 to 6 from left to right) then some of the options are:

the first monster can't eat the second monster because a1?=?1 is not greater than a2?=?2;the second monster can't eat the third monster because a2?=?2 is not greater than a3?=?2;the second monster can't eat the fifth monster because they are not neighbors;the second monster can eat the first monster, the queue will be transformed to [3,?2,?2,?1,?2].

After some time, someone said a good joke and all monsters recovered. At that moment there were k (k?≤?n) monsters in the queue, the j-th of which had weight bj. Both sequences (a and b) contain the weights of the monsters in the order from the first to the last.

You are required to PRovide one of the possible orders of eating monsters which led to the current queue, or to determine that this could not happen. Assume that the doctor didn’t make any appointments while monsters were eating each other. Input

The first line contains single integer n (1?≤?n?≤?500) — the number of monsters in the initial queue.

The second line contains n integers a1,?a2,?…,?an (1?≤?ai?≤?106) — the initial weights of the monsters.

The third line contains single integer k (1?≤?k?≤?n) — the number of monsters in the queue after the joke.

The fourth line contains k integers b1,?b2,?…,?bk (1?≤?bj?≤?5·108) — the weights of the monsters after the joke.

Monsters are listed in the order from the beginning of the queue to the end. Output

In case if no actions could lead to the final queue, print “NO” (without quotes) in the only line.

Otherwise print “YES” (without quotes) in the first line. In the next n?-?k lines print actions in the chronological order. In each line print x — the index number of the monster in the current queue which eats and, separated by space, the symbol ‘L’ if the monster which stays the x-th in the queue eats the monster in front of him, or ‘R’ if the monster which stays the x-th in the queue eats the monster behind him. After each eating the queue is enumerated again.

When one monster eats another the queue decreases. If there are several answers, print any of them. Examples Input

6 1 2 2 2 1 2 2 5 5

Output

YES 2 L 1 R 4 L 3 L

Input

5 1 2 3 4 5 1 15

Output

YES 5 L 4 L 3 L 2 L

Input

5 1 1 1 3 3 3 2 1 6

Output

NO

Note

In the first example, initially there were n?=?6 monsters, their weights are [1,?2,?2,?2,?1,?2] (in order of queue from the first monster to the last monster). The final queue should be [5,?5]. The following sequence of eatings leads to the final queue:

the second monster eats the monster to the left (i.e. the first monster), queue becomes [3,?2,?2,?1,?2];the first monster (note, it was the second on the previous step) eats the monster to the right (i.e. the second monster), queue becomes [5,?2,?1,?2];the fourth monster eats the mosnter to the left (i.e. the third monster), queue becomes [5,?2,?3];the finally, the third monster eats the monster to the left (i.e. the second monster), queue becomes [5,?5].

Note that for each step the output contains numbers of the monsters in their current order in the queue.

模擬,在a[i]里查詢 == b[i]的數組區間l,r,判斷該段數組里的最大值能否左右去吃,用queue<pair < int,int > > q,記錄過程,

AC代碼:

#include<cstdio>#include<queue>#include<algorithm>using namespace std;queue <pair <int,int> > q;int a[510],b[510],nl,l;bool bc(int L,int R){ if(L == R) return true; int pl = L; for(int i = L; i <= R ; i++) if(a[pl] < a[i]) pl = i; if(pl > L && a[pl] > a[pl - 1]){ for(int i = pl - 1; i >= L ; i--) q.push(make_pair(i - L + nl + 1,'L')); for(int i = pl + 1; i <= R ; i++) q.push(make_pair(nl,'R')); return true; } while(a[pl] == a[pl + 1] && pl < R) pl++; if(pl < R && a[pl] > a[pl + 1]){ for(int i = pl + 1 ; i <= R; i++) q.push(make_pair(pl - L + nl,'R')); for(int i = pl - 1 ; i >= L ; i--) q.push(make_pair(i - L + nl + 1,'L')); return true; } return false;}int main(){ int sum = 0,N,M,ans = 0,t = 1; scanf("%d",&N); for(int i = 1 ; i <= N; i++) scanf("%d",&a[i]),sum += a[i]; scanf("%d",&M); for(int i = 1 ; i <= M; i++) scanf("%d",&b[i]),sum -= b[i]; l = 1,nl = 1; for(int i = 1 ; i <= N; i++){ ans += a[i]; if(ans == b[t]){ ans = 0; if(bc(l,i)) l = i + 1,nl++,t++;//printf("%d/n",l); else{ printf("NO/n");return 0; } } } if(!sum && t == M + 1){ printf("YES/n"); while(!q.empty()) printf("%d %c/n",q.front().first,q.front().second),q.pop(); } else printf("NO/n"); return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产精品久久久久久久久久久久久久久 | 成人羞羞在线观看网站 | 国产毛片自拍 | 久久久激情网 | 久草资源在线观看 | 欧美性受xxxxxx黑人xyx性爽 | 特逼视频 | 精品一区二区久久久久 | 国产精品视频一区二区三区综合 | 欧洲成人一区 | 亚洲综合视频网站 | 黄色大片网 | 亚洲 91 | 亚洲视频在线网 | 爱射av| 一级黄色毛片播放 | 国产一区二区三区在线观看视频 | 鲁久久 | 天天夜干| 免费国产wwwwwww网站 | 国产色视频在线观看免费 | 亚洲天堂在线电影 | 一及毛片视频 | 一区二区久久电影 | 欧美视频首页 | 成人福利视频导航 | 国产精品一区免费在线观看 | 九一免费国产 | 亚洲日韩精品欧美一区二区 | 午夜视频久久 | 亚洲成人免费视频在线 | 国产一区二区三区四区五区在线 | 国产91一区 | 福利免费在线 | 中文字幕在线观看国产 | 一本色道久久综合亚洲精品小说 | 一区二区免费看 | 最近免费观看高清韩国日本大全 | 福利一区二区三区视频在线观看 | 好吊色欧美一区二区三区四区 | 日日草视频 |