如果发现广告等破坏行为,请尽量将条目恢复到较早的版本而不是把相应内容直接删除,谢谢合作。

USACO/transform

来自"NOCOW"

跳转到: 导航, 搜索
这是USACO Chapter 1 .2中的OI题目Transformations介绍及题解,参见 翻译C语言代码C++语言代码Pascal语言代码

目录

[编辑] 分析

设a是原始状态,b是改变后的状态。

水平翻转:

b[i,n-j+1]:=a[i,j]

右旋90度:

b[j,n-i+1]:=a[i,j]

枚举方案就行了,或直接枚举变换。

需要注意的是,USACO是不给用GOTO的。注意代码的清晰程度。

小提示:如果你觉得自己写的程序是对的,但是总是不能AC,那么,试着将它的各个功能分解成一个个子例程, 并逐个验证其正确性,就能迅速发现BUG在哪里。

[编辑] 注意

1.在判断5的时候要注意一定是要有一个转换的过程,不能直接在没有中间数组的情况下套公式进行判断,这样可能会造成错误。 2.即使两组图形完全一样,不必经过转换,也必须先试验1-5的转换方法,如果都不行才能输出6,因为题目要求输出编号较小的转换方法

[编辑] 参考代码

c

C++

pascal

[编辑] 引用

[1]

[2]

个人工具