Description
Edward, a poor copy typist, is a user of the Dvorak Layout. But now he has only a QWERTY Keyboard with a broken Caps Lock key, so Edward never presses the broken Caps Lock key. Luckily, all the other keys on the QWERTY keyboard work well. Every day, he has a lot of documents to type. Thus he needs a converter to translate QWERTY into Dvorak. Can you help him?
The QWERTY Layout and the Dvorak Layout are in the following:
Input
A QWERTY document Edward typed. The document has no more than 100 kibibytes. And there are no invalid characters in the document.
Output
The Dvorak document.
Sample Input
Jgw Gqm Andpw a H.soav Patsfk f;doe Nfk Gq.d slpt a X,dokt vdtnsaohe Kjd yspps,glu pgld; aod yso kd;kgluZ 1234567890 `~!@#$%^&*()}"']_+-=ZQqWEwe{[\| ANIHDYf.,bt/ ABCDEFuvwxyz
Sample Output
Hi, I'm Abfl, a Dvqrak Layqut usfr. But I'vf qnly a Owfrty kfybqard. Thf eqllqwing linfs arf eqr tfsting: 1234567890 `~!@#$%^&*()+_-={}[]:"'<>,.?/\| ABCDFEuvwxyz AXJF>Ugk,oe;
就是两个键盘大小写分别打一下表就好了,别漏下就行。
#include<cstdio>
#include <cstring>
#include<algorithm>
#include <iostream>
#include <cmath>
//#include <stdio.h>
#define ll long long
using namespace std;
char s1[]= {"QWERTYUIOP{}|ASDFGHJKL:\"ZXCVBNM<>?qwertyuiop[]\\asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+`1234567890-="};
char s2[]= {"\"<>PYEGCRL?+|AQFUIDHTNS_:OJKXBMWVZ',.pyegcrl/=\\aqfuidhtns-;ojkxbmwvz~!@#$%^&*(){}`1234567890[]"};
char c;
char print(char c)
{
for(int i=0; s1[i]; i++)
if(s1[i]==c)
return s2[i];
return c;
}
int main()
{
while(~scanf("%c",&c))
{
printf("%c",print(c));
}
cout<<endl;
return 0;
}