CF1250K.Projectors
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
There are n lectures and m seminars to be conducted today at the Faculty of Approximate Sciences. The i -th lecture starts at ai and ends at bi (formally, time of the lecture spans an interval [ai,bi) , the right bound is exclusive). The j -th seminar starts at pj and ends at qj (similarly, time of the seminar spans an interval [pj,qj) , the right bound is exclusive).
There are x HD-projectors numbered from 1 to x and y ordinary projectors numbered from x+1 to x+y available at the faculty. Projectors should be distributed in such a way that:
- an HD-projector is used in each lecture;
- some projector (ordinary or HD) is used in each seminar;
- a projector (ordinary or HD) can only be used in one event at the same moment of time;
- if a projector is selected for an event, it is used there for the whole duration of the event;
- a projector can be reused in some following event, if it starts not earlier than current event finishes.
You are to find such distribution of projectors, if it exists.
Again, note that the right bound of the event's time range is not inclusive: if some event starts exactly when another event finishes, the projector can be reused (suppose that it is instantly transported to the location of the event).
输入格式
The first line contains an integer t ( 1≤t≤300 ) — the number of test cases.
Each test case starts with a line containing four integers n,m,x,y ( 0≤n,m,x,y≤300 ; n+m>0 , x+y>0 ) — the number of lectures, the number of seminars, the number of HD projectors and the number of ordinary projectors, respectively.
The next n lines describe lectures. Each line contains two integers ai , bi ( 1≤ai<bi≤106 ) — the start time (inclusive) and finish time (exclusive) of the i -th lecture.
The next m lines describe seminars. Each line contains two integers pj , qj ( 1≤pj<qj≤106 ) — the start time (inclusive) and finish time (exclusive) of the j -th seminar.
输出格式
For each test case, print YES if it is possible to distribute projectors in order to meet all requirements, or NO otherwise.
In case of positive answer, output one additional line containing n+m integers. The first n integers should be not less than 1 and not greater than x , and the i -th of them should be the index of HD projector used in the i -th lecture. The last m integers should be not less than 1 and not greater than x+y , and the j -th of them should be the index of projector used in the j -th seminar. If there are multiple answers, print any of them.
输入输出样例
输入#1
2 2 2 2 2 1 5 2 5 1 5 1 4 2 0 2 10 1 3 1 3
输出#1
YES 2 1 4 3 YES 2 1
输入#2
3 1 2 1 1 3 4 2 4 1 3 3 4 2 3 5 7 1 3 1 7 4 8 2 5 1 6 2 8 0 1 1 0 1 1000000
输出#2
YES 1 2 1 NO YES 1