有一行电文(中间没有空格),请你按照张氏加密法进行加密后输出。
张氏加密法规则如下:
1)先求得电文的长度,假设为n
2)再求出所有n的因子
3)如果因子所在位置上的字母为小写字母,则改为大写字母
如电文为:
ZhangYongLiangisaDoctor!
电文长度为24,则因子有1,2,3,4,6,8,12,24
所以加密后的电文为
ZHANgYoNgLiAngisaDoctor!
#include <cstdio> #include <cstring> using namespace std; char st[100]; int main() { scanf("%s",st); _____(1)________ for(int i=1;i<=n;i++) { if(n%i==0) { char c=st[i-1]; if(_____(2)_______) st[i-1]=c-'a'+'A'; } } printf("%s",st); return 0; }