移位
欢迎报名洛谷网校,期待和大家一起进步!
本题难点在于进行移位操作。如果我们没有“移位”操作,只输出 ABCD...XYZ,则我们可以书写以下循环。
for (int i = 1; i <= 26; i++) {
char ch = 'A' + (i - 1);
cout << ch;
}
现在有了移位操作,则我们写成 char ch = 'A' + (n + i - 1); 就好了吗?且慢,因为 Z 的后一个是 A。这应当如何处理呢?
注意到移了
for (int i = 1; i <= 26; i++) {
char ch = 'A' + (n + i - 1) % 26;
cout << ch;
}