码迷,mamicode.com
首页 > 其他好文 > 详细

20180414模拟赛T2——拼图

时间:2018-04-15 21:05:23      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:拼图   https   顺序   输出   显示   数字   要求   cpp   文件名   

拼图

  • 源程序名   puzzling.??? (PAS,BAS,C,CPP)
  • 可执行文件名 puzzling.EXE
  • 输入文件名   puzzling.IN
  • 输出文件名 puzzling.OUT
  • 时间限制 1S
  • 内存限制 128MB

背景

潘帕斯草原最近流行起了一种拼图游戏,@潘帕斯雄鹰为了显示自己是最强的鹰,想尽办法要在这个游戏上赢过其他鹰……

题目描述

这个拼图游戏要求将一些图形拼成一个正方形,图形的个数从1到5。如下图所示,图形个数是4。

技术分享图片

图形不能旋转,拼的时候不能重叠,拼完后的正方形里面不能有空隙。所有给定的图形都要使用。
技术分享图片
左面的图表示这样拼不行,右面是一个成功的拼法。

现在,@潘帕斯雄鹰想知道他能否完成这个游戏以表示自己是最强的鹰;如果可以,请输出一种完成这个游戏的方案。

输入格式:

文件的第一行是一个整数n,表示图形的个数,范围从1到5。
接下来有n个部分,每个部分的第一行是2个整数i和j,表示下面的i行j列用来描述一个图形。图形用0和1表示,1表示图形占有这个位置,0表示不占有,中间没有空格。例如上图中图形A的描述是

2 3
111
101

所有图形的长与宽都不超过5。
根据图形给出的顺序给每个图形编号,从1开始,至多到5。
保证数据无多解情况。

输出文件:

如果不能拼成一个正方形,就输出“No solution possible”;否则,输出一种拼的方案:一个正方形的数阵,每个位置上的数字是占有这个位置的图形的编号,中间没有空格。例如上面A、B、C、D的编号依次是1、2、3、4,那么就可以输出

1112
1412
3422
3442

输入样例1:

4
1 4
1111
1 4
1111
1 4
1111
2 3
111
001

输出样例1:

No solution possible

输入样例2:

5
2 2
11
11
2 3
111
100
3 2
11
01
01
1 3
111
1 1
1

输出样例2:

1133
1153
2223
2444

20180414模拟赛T2——拼图

标签:拼图   https   顺序   输出   显示   数字   要求   cpp   文件名   

原文地址:https://www.cnblogs.com/pfypfy/p/8849112.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!