高中信息技术奥赛翻币问题

2022-04-08   来源:信息技术

山姆大叔发明了一个有趣的翻币游戏。在一个特制的棋盘中有n x m个方格,每个方格中放1枚金币。方格中的金币或正面朝上,或反面朝上。棋盘的每一行的左侧都有一个黑色按钮,可以控制该行中金币的朝向。每按一次黑色按钮,相应行中的所有金币翻转。棋盘每一列上方都有一个白色按钮,用于交换2列中的金币。同时按第i列和第j列的白色按钮,可以交换第i列和第j列的金币,且保持金币在原列中的位置和朝向。 翻币游戏要求游戏者对于金币在棋盘中的一个给定初始布局,通过操纵棋盘上的黑白按钮,达到一确定的目标布局。

编程任务: 对于金币在棋盘中的一个给定初始布局和目标布局,编程计算是否可通过操纵棋盘上的黑白按钮,从初始布局达到目标布局。

数据输入: 由文件coin.in提供输入数据。文件含多个测试数据项。文件的第一行中只有1个整数k,表示共有k个测试数据项。每个测试数据项的第一行中有2个整数n 和m分别表示棋盘的行数和列数。接着的2n行中,前n行表示该测试数据项的初始布局,后n行表示该测试数据项的目标布局。每行有m个符号(+或-)表示该行中金币的朝向。"+"表示金币正面朝上,"-" 表示金币反面朝上。

结果输出: 对每个测试数据项,如果可通过操纵棋盘上的黑白按钮,从初始布局达到目标布局则输?quot;yes", 否则输出"no"。所有结果输出到文件coin.out中。  输入文件示例

2

3 4

- + - +

+ - - +

- - - -

- + - +

+ + - -

- - - -

2 2

- -

- +

+ +

+ +

输出文件示例

yes

no

<

高中信息技术奥赛翻币问题

http://m.rzshzz.com/jiaoanxiazai/236786/

展开更多 50 %)
分享

热门关注

观而知之作文800字

信息技术

努力创新,展望未来作文

信息技术

招商银行:让IT懂业务

信息技术

飞利浦变法:小心翼翼,改造公司

信息技术

网上独行侠 高春辉

信息技术

汪书福:两块钱起家的IT大亨

信息技术

推广普通话黑板报:说好普通话 用好规范字

信息技术

诗歌手抄报:关于诗歌的手抄报

信息技术

法制手抄报资料:网络对青少年的影响

信息技术

经典结婚邀请短信大全

信息技术