加密术_JAVA
Description
加密技術(shù)是一種常用的安全保密手段,利用加密技術(shù)可以把重要的數(shù)據(jù)變成經(jīng)過(guò)加密變成亂碼傳送,到達(dá)目的地后再利用解密手段還原。現(xiàn)在我們發(fā)明了一種新的加密技術(shù),即通過(guò)在一個(gè)字符串的任意位置插入若干個(gè)隨機(jī)生成的字符(‘a(chǎn)’’z’或’A’’Z’)對(duì)該字符串加密。
我們想要申請(qǐng)專利,但在這之前,需要做大量的檢測(cè)。所以有必要編寫(xiě)一個(gè)程序判斷加密后的字符串經(jīng)過(guò)解密是否是加密前的字符串,即從加密后的字符串中刪除若干個(gè)字符后剩下的字符串是否可以拼接成加密前的字符串。Can you help us ?
Input
輸入包含多組,每組輸入兩個(gè)串(只包含大小寫(xiě)字母)S,T,中間用空格分開(kāi)。S和T的長(zhǎng)度不超過(guò)100000。
Output
對(duì)于每組輸入,如果加密后的字符串解密后與加密前的字符串相同輸出“Yes”,否則輸出“No”。
Sample
Input
string Strstring
HELLO sdhfHqEiweqLbnLOqwerty
nomatter nsomatstr
friend FriEendly
Output
Yes
Yes
No
No
Hint
import java.util.Scanner;class Secret {String str;public Secret(String str) {this.str = str;}public boolean judge(String text) {int p = -1, tp;for(int i = 0; i < str.length(); i++) {tp = text.indexOf(str.charAt(i), p + 1);if(tp >= 0 && tp > p)p = tp;elsereturn false;}return true;} } public class Main {public static void main(String args[]) {Scanner reader = new Scanner(System.in);String str, text;while(reader.hasNext()) {str = reader.next();text = reader.next();Secret secret = new Secret(str);if(secret.judge(text))System.out.println("Yes");elseSystem.out.println("No");}reader.close();}}總結(jié)
- 上一篇: 小学数学_JAVA
- 下一篇: 救基友记2_JAVA