# UVa 10222 ### 題目連結:[UVa10222](http://domen111.github.io/UVa-Easy-Viewer/?10222) ### 題述: 很久以前,在波蘭的 BUET 大學有一個老教授完全發瘋了。他開始用很特殊的文字來說話。沒有人可以聽得懂他的演講及授課。最後, BUET 終於陷入了難題。再也沒有方法可以讓他繼續在大學裡工作了。突然有一個學生 ( 當然是 UVA ACM 學會註冊的作者,並在24小時線上裁判系統上有很好的排名 ) 創造了一個可以將教授的話解碼的程式。在此之後,這個老教授開始一如往常般地工作,每個人也都鬆了一口氣。 因此,如果你有機會去到 BUET ,看到一個老師透過一個接到裝有語音辨識的IBM電腦的麥克風說話,而學生則從電腦螢幕上聽課,你可別嚇到!因為現在你的工就是要寫一個一樣可以解碼這個瘋教授語言的程式。 --- 輸入檔僅含一筆測試資料,也就是編碼後的訊息。 這筆測試資料含有一個或多個單字。 --- 就所給的測試資料,將解碼後的單字印在一行。還好,這工作並不難,只要把每個字母或符號以鍵盤上在它左邊第二個鍵的符號來取代就行了。 ### c code: ```c= #include<stdio.h> #include<string.h> int main() { //建表 char cr[] = " `1234567890qwertyuiop[asdfghjklzxcvbnm," ; char wa[] = " 234567890-=ertyuiop[]\\dfghjkl;'cvbnm,./" ; char str[999] = {0} ; gets ( str ) ; int i , j ; //逐一比對 for ( i = 0 ; i < strlen( str ) ; i++ ) { for ( j = 0 ; j < strlen( wa ) ; j++ ) { if ( str[i] == wa[j] ) { printf ( "%c" , cr[j] ) ; } } } printf ( "\n" ) ; return 0 ; } ``` ![](https://i.imgur.com/bWmUVpx.png) :::success **``sample input``** k\[r dyt i\[o p '\[nt ]y\[jyd. ::: :::success **``sample output``** how are you i love program ::: #### [返回首頁](https://hackmd.io/@fkleofk/APCS#10222) ###### tags: `APCS選修` `C++` `UVa`