P1914 小书童——凯撒密码题解(用c++的string对象来写)
这里我用c++的string对象来写
#include <iostream>
#include <string> //注意:不是<string.h>
using namespace std;
int main()
{int n,a,b;char c;string str1,str2;cin>>n>>str1;for(int i=0;i<str1.size();i++){a=str1[i]; //遍历str1字符串转为ASCll数值b=(a+n-97)%26+97; //移位后的数值存给bc=b; //把b变成字符str2=str2+c; //把b存入str2中}cout<<str2;
}
补充知识:如何实现移位呢?--实质约瑟夫环
有一个公式如下
移位后的数值=(当前数值+移动几位-起点)%成员个数+起点
eg:b=(a+n-97)%26+97
a是当前的ASCll值
n是向右移动的个数
然后减去了起点,这里的起点说的就是a-z的起点a的ASCll值97
%26的26就是成员个数,a-z有26个成员
后面+97就是加上起点,这里的起点就是a的ASCll值
如果是向右移动呢?
如果向左移动n,就是向右移动成员个数-n
eg:如果上面改为向左移动n,就是向右移动26-n
b=(a+26-n-97)%26+97
P1914 小书童——凯撒密码题解(用c++的string对象来写)相关推荐
- P1914 小书童——凯撒密码题解(全网首创方法)
思路很简单(也很奇葩) 用 a[i]+b: if(a[i]>='Z'&&a[i]<='a'||a[i]>='z'){ a[i]-=26:时 可能会这样: a[i]=Z ...
- 洛谷——P1914 小书童——凯撒密码
P1914 小书童--凯撒密码 输出格式 一行,是此蒟蒻的密码 输入输出样例 输入 #1复制 1 qwe 输出 #1复制 rxf 说明/提示 字符串长度<=50 #include<bits ...
- 洛谷 P1914 小书童——凯撒密码 C/C++ 字符串
不需要开数组 边读边处理 //P1914 小书童--凯撒密码 #define LOCAL #include <iostream> #include <cstdio> #incl ...
- 刷题随记 洛谷P1914 小书童——凯撒密码 char爆了!!
洛谷P1914 小书童--凯撒密码. 第一次错误代码 #include<bits/stdc++.h> using namespace std; int n; char a[100]; in ...
- [洛谷]P1914小书童——凯撒密码
小书童--凯撒密码 题目背景 某蒟蒻迷上了 "小书童",有一天登陆时忘记密码了(他没绑定邮箱 or 手机),于是便把问题抛给了神犇你. 题目描述 蒟蒻虽然忘记密码,但他还记得密码是 ...
- Java实现 洛谷 P1914 小书童——凯撒密码
import java.util.Scanner;public class 凯撒密码 {public static void main(String[] args) {Scanner sc = new ...
- 洛谷P1914 小书童——凯撒密码
题目背景 某蒟蒻迷上了"小书童",有一天登陆时忘记密码了(他没绑定邮箱or手机),于是便把问题抛给了神犇你. 题目描述 蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成.密码是由 ...
- P1914 小书童——凯撒密码
题目背景 某蒟蒻迷上了 "小书童",有一天登陆时忘记密码了(他没绑定邮箱 or 手机),于是便把问题抛给了神犇你. 题目描述 蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成.密 ...
- P1914 小书童——凯撒密码(python实现)
题目背景 某蒟蒻迷上了 "小书童",有一天登陆时忘记密码了(他没绑定邮箱 or 手机),于是便把问题抛给了神犇你. 题目描述 蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成.密 ...
最新文章
- alert()的功能_前端实现简单的图片上传小图预览功能
- 应届前端面试——看这篇就够了(一)
- WebForm实现增删改查
- Eclipse和Tomcat绑定并且将上传资源到Tomcat上
- android获取小程序音频时长,微信小程序获取音频时长与实时获取播放进度
- qt鼠标进入窗体后,窗体自动置顶
- mac电脑本地运行MapReduce, Permission denied
- 7070mt安装ubuntu dell_【手把手AI项目】一、安装win10+linux-Ubuntu16.04的双系统(超细致)...
- 【转】加班与加薪的秘密:一位华为工程师的经验分享
- python---录制音频
- React native和原生之间的通信
- 2021-07-26 SEO优化_关键词密度设置算法
- 爬取巨潮资讯网中与“贵州茅台”相关的公告的标题和网址。
- linux程序图形关不了怎么办,ubuntu下卸载软件 linux关闭图形化界面
- 入门】求一个两位数的个位和十位的和
- 计算机的硬件系统和软件系统
- 计算机数据恢复试题,数据恢复试卷含笔答实操题a
- 3万字英国留学生Java后台面经,中offer率5/7 精
- 【Java-文件下载】
- 基于施密特与非门(非门)实现多谐振荡器的multisim仿真