题目名称 1858. [国家集训队2011]Mario填格子
输入输出 mario.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 20
题目来源 Gravatarcstdio 于2014-12-08加入
开放分组 全部用户
提交状态
分类标签
数论
分享题解
通过:10, 提交:21, 通过率:47.62%
Gravatartututu 100 0.054 s 25.27 MiB C++
Gravatartututu 100 0.079 s 25.27 MiB C++
GravatarWillem 100 0.125 s 0.31 MiB C++
Gravatarflybird 100 0.196 s 0.40 MiB C++
Gravatarlele 100 0.212 s 0.29 MiB C++
Gravatarlele 100 0.213 s 0.29 MiB C++
Gravatar514flowey 100 0.278 s 1.47 MiB C++
Gravatarcstdio 100 1.590 s 0.31 MiB C++
Gravatarmikumikumi 100 1.591 s 0.31 MiB C++
Gravatar张灵犀不和我一般见识真可怕呢(笑 100 1.607 s 0.31 MiB C++
关于 Mario填格子 的近10条评论(全部评论)
Pollard_rho+人类智慧(找规律)……
数据淼
Gravatarcstdio
2014-12-08 16:00 1楼

1858. [国家集训队2011]Mario填格子

★★☆   输入文件:mario.in   输出文件:mario.out   评测插件
时间限制:1 s   内存限制:512 MiB

【试题来源】

2011中国国家集训队命题答辩

【问题描述】

《超级马里奥兄弟》是任天堂于1985年出品的著名横版过关游戏,作为1983年游戏《马里奥兄弟》的续作在FC红白机上推出。在游戏《超级马里奥兄弟》中,玩家控制马里奥从库巴手上设法营救Peach公主。
今年是《超级马里奥兄弟》发行25周年了,任天堂推出了25周年纪念合集。lqp也想来凑热闹,他开发了一个小游戏,叫做“Mario填格子”。游戏是这样的,Boss Wario给出了一个3*3的小格子,在左上角填上了M,右下角填上了N。现在开始倒计时了,你必须给剩余的几个格子填上一些正整数,对于每个格子(格子里的数是X)满足:
1.如果它左边相邻有一个数Y,那么Y|X(表示Y整除X)。
2.如果它上面相邻有一个数Z,那么Z|X。
3.不存在和它填有相同数字的格子。
比如下面就是一个M=1, N=36的满足条件的填法:

1
2
4
3
6
12
9
18
36

【输入格式】

输入包含若干行,以EOF结束。
每行包含两个正整数M和N,分别是左上角的数字和右下角的数字。

【输出格式】

如果Mario能够获胜,输出“Mario_wins!”,然后接下来三行输出任何一个方案。如果Mario不能够获胜,输出“ Wario_wins!”。每个数据输出一个空行。
(Special Judge不会判断你的输出格式。)

【样例输入】

1 36
4 36

【样例输出】

Mario_wins!
1 2 4
3 6 12
9 18 36

Wario_wins!

【数据说明】

10%数据满足:1≤M, N≤9
30%数据满足:1≤M, N≤100
50%数据满足:1≤M, N≤100000
100%数据满足:最多10组测试数据,1≤M, N≤1017
其中有10%数据N=M*pT