题解:AT_abc375_c [ABC375C] Spiral Rotation

看懂题以后其实也不太难。

题意有点难懂,但是借助样例不难发现第一次操作是把原图按顺时针转 90。此时再看题面,易得操作就是每次把图的一部分顺时针旋转 90,最开始为整图操作,每次操作后都舍弃当前操作的图的最外层一圈后再进行下一次操作。

看懂题意以后,我们发现直接模拟肯定是不行的,但是我们可以分别对每个点考虑。

具体的,我们设点 (x,y) 一共被操作了 k 次,因为操作时 4 次一循环,所以我们只需要考虑 k4 取余后的值。

容易发现点 (x,y) 旋转一次后坐标会变成 (y,nx+1),那么我们只需要执行 k 次后就可以得到 (x,y) 现在的位置。

这样我们构建一张新矩阵,把原图上的点与其一一对应,最后输出即可。

提交记录

posted @   Redamancy_Lydic  阅读(109)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示