PAT1033 舊鍵盤打字(java實現)
題目地址:https://pintia.cn/problem-sets/994805260223102976/problems/994805288530460672
題目描述:
舊鍵盤上壞了幾個鍵,於是在敲一段文字的時候,對應的字元就不會出現。現在給出應該輸入的一段文字、以及壞掉的那些鍵,打出的結果文字會是怎樣?
-
輸入格式:
輸入在 2 行中分別給出壞掉的那些鍵、以及應該輸入的文字。其中對應英文字母的壞鍵以大寫給出;每段文字是不超過 10^5 個字元的串。可用的字元包括字母 [a-z, A-Z]、數字 0-9、以及下劃線 _(代表空格)、,、. 、-、+(代表上檔鍵)。題目保證第 2 行輸入的文字串非空。
注意:如果上檔鍵壞掉了,那麼大寫的英文字母無法被打出。 -
輸出格式:
在一行中輸出能夠被打出的結果文字。如果沒有一個字元能被打出,則輸出空行。
解題思路:先判斷壞鍵中有沒有’+’,有的話將unbroken中的大寫字母通過正規表示式都去掉,然後通過for迴圈遍歷新的unbroken字串中有沒有壞鍵代表的字元,去掉這部分後輸出result即可
注:java寫的最後一個測試點執行超時,試了好幾個其他人寫的也超時了,但我用stringbuffer寫相對程式碼量更少。僅供參考
程式:
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader read = new BufferedReader(new InputStreamReader(System.in));
StringBuffer result = new StringBuffer();
String broken = read.readLine();
String unBroken = read.readLine();
if (broken.contains("+")) {
unBroken = unBroken.replaceAll("[A-Z]", "");
}
//System.out.println(unBroken);
for (int i = 0; i < unBroken.length(); i++) {
boolean flag = true;
for (int j = 0; j < broken.length(); j++) {
if (String.valueOf(unBroken.charAt(i)).toUpperCase()
.equals(String.valueOf(broken.charAt(j)).toUpperCase())) {
flag = false;
break;
}
}
if (flag == true) {
result.append((String.valueOf(unBroken.charAt(i))));
}
}
System.out.println(result);
}
}
相關文章
- PAT1029 舊鍵盤(java實現)Java
- PAT-B 1033 舊鍵盤打字【字串】字串
- canvas鍵盤打字練習功能Canvas
- PAT-B 1029 舊鍵盤【字串】字串
- B1029 舊鍵盤 (20分)
- js實現打字效果JS
- 12.2 實現鍵盤模擬按鍵
- tickeys 1.1.0 中文版 (鍵盤打字音效模擬)
- java鍵盤監聽之視窗監聽的實現Java
- tickeys 1.0.0 中文版 (鍵盤打字音效模擬工具)
- 鍵盤裝置執行正常卻不能打字如何解決 鍵盤全沒反應了按什麼鍵
- CSS + JS 實現打字機效果CSSJS
- 機械鍵盤什麼軸好 機械鍵盤追求手感打字玩遊戲該選什麼軸遊戲
- 劍橋大學:研究發現手機打字速度快趕上敲鍵盤的速度
- 一文帶你入門客製化鍵盤,打造專屬打字利器
- 移動端頁面鍵盤出現“搜尋”按鍵且實現提交功能
- Java中的鍵盤錄入Java
- win10鍵盤沒壞打不出字怎麼處理_win10鍵盤沒壞無法打字解決步驟Win10
- win10系統下鍵盤打字反應慢遲鈍的解決方法Win10
- STM32--矩陣鍵盤的設計實現矩陣
- 老舊筆記本改造成便攜KVM(鍵盤顯示器)筆記
- Java - 4 鍵盤輸入語句Java
- win10玩遊戲一直打字怎麼處理_win10遊戲鍵盤一按就打字解決方法Win10遊戲
- javaScript實現鍵盤控制元素移動位置及縮放JavaScript
- Flutter實現點選空白區域隱藏軟鍵盤Flutter
- vue3中使用simple-keyboard實現虛擬鍵盤(帶中文切換數字鍵盤)Vue
- Java鍵盤錄入的兩種方式Java
- CSS實現文字打字動畫(+1白話講解)CSS動畫
- 純CSS3屬性animation實現的打字效果CSSS3
- Java 實現系統全域性快捷鍵繫結Java
- 微信小程式使用元件實現移動端軟鍵盤微信小程式元件
- Win10電腦開機之後鍵盤不能用都要重啟才能打字如何解決Win10
- 鍵盤快捷鍵
- 機械鍵盤黑軸紅軸青軸茶軸區別 機械鍵盤黑軸紅軸青軸茶軸玩遊戲打字哪個好遊戲
- 純鍵盤開發實戰(MouselessProgramming)
- 超實用Mac快捷鍵盤點Mac
- java設定熱鍵(C++實現dll匯入)JavaC++
- android實現底部彈出框與軟鍵盤衝突(全面屏虛擬鍵適配)Android