CF28A.Bender Problem

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Robot Bender decided to make Fray a birthday present. He drove nn nails and numbered them from 11 to nn in some order. Bender decided to make a picture using metal rods. The picture is a closed polyline, which vertices should be nails (in the given order). The segments of the polyline should be parallel to the coordinate axes. Polyline is allowed to have self-intersections. Bender can take a rod and fold it exactly once in any place to form an angle of 90 degrees. Then he can attach the place of the fold to some unoccupied nail and attach two ends of this rod to adjacent nails. A nail is considered unoccupied if there is no rod attached to it (neither by it's end nor the by the fold place). No rod could be used twice. It is not required to use all the rods.

Help Bender to solve this difficult task.

输入格式

The first line contains two positive integers nn and mm ( 4<=n<=500,2<=m<=5004<=n<=500,2<=m<=500 , nn is even) — the amount of nails and the amount of rods. ii -th of the following nn lines contains a pair of integers, denoting the coordinates of the ii -th nail. Nails should be connected in the same order as they are given in the input. The last line contains mm integers — the lenghts of the rods. All coordinates do not exceed 10410^{4} by absolute value. Lengths of the rods are between 11 and 200000200000 . No rod can be used twice. It is guaranteed that all segments of the given polyline are parallel to coordinate axes. No three consecutive nails lie on the same line.

输出格式

If it is impossible to solve Bender's problem, output NO. Otherwise, output YES in the first line, and in the second line output nn numbers — ii -th of them should be the number of rod, which fold place is attached to the ii -th nail, or -1, if there is no such rod.

If there are multiple solutions, print any of them.

输入输出样例

  • 输入#1

    4 2
    0 0
    0 2
    2 2
    2 0
    4 4
    

    输出#1

    YES
    1 -1 2 -1 
    
  • 输入#2

    6 3
    0 0
    1 0
    1 1
    2 1
    2 2
    0 2
    3 2 3
    

    输出#2

    YES
    1 -1 2 -1 3 -1 
    
  • 输入#3

    6 3
    0 0
    1 0
    1 1
    2 1
    2 2
    0 2
    2 2 3
    

    输出#3

    NO
    
首页