[Day21]Palindromes

上一篇介绍了The Huge One,这题因为数字太大,所以选择使用了BigInteger,当然各位也可以不使用这个方法,但我觉得这方法比较方便,可以直接除,接下来只需要在判断要怎麽输出就可以咯。

今天讲解的题目是Palindromes
先附上程序码:

import java.util.;
import static java.lang.System.
;
public class main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
char b[]={'A','E','H','I','J','L','M','O','S','T','U','V','W','X','Y','Z','1','2','3','5','8'};
char B[]={'A','3','H','I','L','J','M','O','2','T','U','V','W','X','Y','5','1','S','E','Z','8'};
while(sc.hasNext()){
StringBuilder A=new StringBuilder(sc.next());
StringBuilder a=new StringBuilder("");
for(int i=0;i<A.length();i++){
int C=-1;
for(int j=0;j<b.length;j++){
if(A.charAt(i)==b[j]){
C=j;
break;
}
}
if(C!=-1)a.append(B[C]);
else a.append(' ');
}
String Q=A.toString();
String q=a.toString();
A.reverse();
a.reverse();
if(Q.equals(a.toString())){
if(q.equals(a.toString())) System.out.println(Q+" -- "+"is a mirrored palindrome.");
else System.out.println(Q+" -- "+"is a mirrored string.");

		}else{
			if(Q.equals(A.toString())) System.out.println(Q+" -- "+"is a regular palindrome.");
			else System.out.println(Q+" -- "+"is not a palindrome.");
		}
		System.out.println("");
	}
}

}

今天的讲解就到这里。
明天也是新的题目,会介绍The 3n + 1 problem ,继续加油!


<<:  [Day07] Flutter with GetX image picker 手机相簿选照片

>>:  #21 JS: Object - Constructors

JavaScript入门 Day01_介绍

因为上一个自我挑战,我耍白痴,打完忘记按发表,所以只能再重新ㄌ呜呜 希望我这次不会再耍白痴了? 嘎油...

开源自动化攻击模拟平台CALDERA

CALDERA 是一套开源自动化攻击模拟平台CALDERA, 应用於MITRE ATT&CK框架, ...

【从实作学习ASP.NET Core】Day11 | 後台 | 详细资料与 ViewModel

今天要来实作 Details 详细资料页面 ViewModel ViewModel 是拿来对 MVC...

Ruby on Rails CRUD 之 R(Read)

CRUD 之 R(Read) 从资料表里读取资料也是很常⾒的操作,在读取的⽅法就比写入来得多样化,有...

[Day - 20] - Spring 一日优雅组态配置就上手

前提摘要 无论何种系统,都需要有一个组态设定的位置,Spring很贴心的提供预设*.properie...