CF980B.Marlin
普及/提高-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
The city of Fishtopia can be imagined as a grid of 4 rows and an odd number of columns. It has two main villages; the first is located at the top-left cell (1,1), people who stay there love fishing at the Tuna pond at the bottom-right cell (4,n). The second village is located at (4,1) and its people love the Salmon pond at (1,n).
The mayor of Fishtopia wants to place k hotels in the city, each one occupying one cell. To allow people to enter the city from anywhere, hotels should not be placed on the border cells.
A person can move from one cell to another if those cells are not occupied by hotels and share a side.
Can you help the mayor place the hotels in a way such that there are equal number of shortest paths from each village to its preferred pond?
菲什托皮亚城可以被想象成一个 4 行、奇数列的网格。该城有两个主要村庄:第一个村庄位于左上角单元格 (1,1),居住在此的人们喜爱在右下角单元格 (4,n) 的金枪鱼池垂钓;第二个村庄位于 (4,1),其居民则喜爱位于 (1,n) 的鲑鱼池。
菲什托皮亚市长希望在城中放置 k 家酒店,每家酒店占据一个单元格。为允许人们从任意边界位置进入城市,酒店不得建在边界单元格上。
当两个单元格未被酒店占据且有公共边时,人们可在这两个单元格之间移动。
您能否帮助市长安排这些酒店的位置,使得从每个村庄到其对应偏爱池塘的最短路径数目相等?
输入格式
The first line of input contain two integers, n and k (3≤n≤99, 0≤k≤2×(n−2)), n is odd, the width of the city, and the number of hotels to be placed, respectively.
输入的第一行包含两个整数 n 和 k(3≤n≤99,0≤k≤2×(n−2)),其中 n 为奇数,表示城市的宽度,k 表示需放置的酒店数量。
输出格式
Print "YES", if it is possible to place all the hotels in a way that satisfies the problem statement, otherwise print "NO".
If it is possible, print an extra 4 lines that describe the city, each line should have n characters, each of which is "#" if that cell has a hotel on it, or "." if not.
如果可以按题目要求的方式放置所有酒店,则输出 "YES",否则输出 "NO"。
如果可以实现,则额外输出 4 行来描述该城市,每行包含 n 个字符:若该位置有酒店,则对应字符为 "#";否则为 "."。
输入输出样例
输入#1
7 2
输出#1
YES ....... .#..... .#..... .......
输入#2
5 3
输出#2
YES ..... .###. ..... .....
输入解题思路,AI测评打分。不知道怎么写?