PTA 7-1 我也会加密

gdg

字符串加密可以理解为对字符串的一种固定方式的变形,现定义一种基于种子数字的加密方法,首先计算种子数字,计算方法为将该字符串的长度对5求余加1,以该数字为间隔,得到原字符串的子串并求逆得到最终的密码。

输入格式:

原字符串

输出格式:

加密后的字符串

输入样例:

在这里给出一组输入。例如:

abcdefghijklmn

输出样例:

在这里给出相应的输出。例如:

kfa

在这里给出相应的输出。例如:

按我个人的理解来说,该题的考察要点主要就是对字符串的运用,使用toCharArray();这个方法是直接将我们输入的字符串所有的元素,都归为一个元素。

其他的考点根据我们正常的逻辑都可以解答;

 import java.util.*;
 public class Main{
	 public static void main(String[] args) {
		 Scanner scan=new Scanner(System.in);
		 String st=scan.nextLine();
         //首先输入一个字符串
		 char[] arr=st.toCharArray();
        //利用toCharArray()方法将输入的字符串转化为一个字符串数组,方便接下来的操作;
		 int t=st.length()%5+1;
       //计算这个字符串应该加密时的间隔,也可以理解为中间删去几个元素;
		 String rust="";
       //定义一个空的字符串;
		 for(int i=0;i<st.length();i++) {
			 if(i==0||i%t==0) {
				 rust=rust+arr[i];
       //这里就是将符合条件的字符添加进这个空得字符串,形成一个新的字符串;
			 }
		}
		char[] arr1=rust.toCharArray();
        //一样的步骤,主要是将其转化为字符串数组;
		for(int i=arr1.length-1;i>=0;i--) {
			System.out.print(arr1[i]);
        //逆序打印;
		}
	 }
}
  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值