P12164 题解

· · 题解

P12164 题解

Step 0 前言 Preface

博客食用更佳 打算把蓝桥杯的题(P12162~P12168)全写一篇题解,这是 T3 的题解。

Step 1 思路 Idea

我们首先分析一下样例并且表上下标(从 0 开始,好找规律):

  0 1 2 3 4 5 6 7 8 9
0 2 0 2 5 2 0 2 5 2 0
1 0 2 5 2 0 2 5 2 0 2 
2 2 5 2 0 2 5 2 0 2 5
3 5 2 0 2 5 2 0 2 5 2
4 2 0 2 5 2 0 2 5 2 0

我们可以尝试把两个下标加起来,看和字符有什么关系:

0+0=0:2
0+1=1:0
0+2=2:2
0+3=3:5
0+4=4:2
0+5=5:0
0+6=6:2
0+7=7:5
0+8=8:2
0+9=9:0
……
4+6=10:2
4+7=11:5
4+8=12:2
4+9=13:0

我们发现下标 x 加上下标 y\bmod4 和字符有关联:

  1. ### Step 2 代码 Code 根据这个规律,我们就能写出代码: ```cpp #include<bits/stdc++.h> using namespace std; char ch[110][110], of[4]={'2', '0', '2', '5'}; // 映射 int main() { int n, m; scanf("%d%d", &n, &m); for(int i = 0;i<n;i++) { for(int j = 0;j<m;j++) { ch[i][j]=of[(i+j)%4]; // 规律 } } for(int i = 0;i<n;i++) { puts(ch[i]); // 直接输出一行,不用挨个字符输出 } return 0; } ``` [100 pts record](https://www.luogu.com.cn/record/213609037)