题目传送门

 /*
模拟:手敲map一一映射,累!
除了忘记读入字符串不能用gets用getline外还是很顺利的AC了:)
*/
#include <cstdio>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <string>
#include <map>
#include <set>
#include <queue>
#include <vector>
using namespace std; const int MAXN = 1e2 + ;
const int INF = 0x3f3f3f3f;
map<char, char> m;
string s; void solve(void)
{
m['~'] = '~'; m['`'] = '`';
m['!'] = '!'; m[''] = '';
m['@'] = '@'; m[''] = '';
m['#'] = '#'; m[''] = '';
m['$'] = '$'; m[''] = '';
m['%'] = '%'; m[''] = '';
m['^'] = '^'; m[''] = '';
m['&'] = '&'; m[''] = '';
m['*'] = '*'; m[''] = '';
m['('] = '('; m[''] = '';
m[')'] = ')'; m[''] = '';
m['_'] = '{'; m['-'] = '[';
m['+'] = '}'; m['='] = ']';
m['Q'] = '"'; m['q'] = '\'';
m['W'] = '<'; m['w'] = ',';
m['E'] = '>'; m['e'] = '.';
m['R'] = 'P'; m['r'] = 'p';
m['T'] = 'Y'; m['t'] = 'y';
m['Y'] = 'F'; m['y'] = 'f';
m['U'] = 'G'; m['u'] = 'g';
m['I'] = 'C'; m['i'] = 'c';
m['O'] = 'R'; m['o'] = 'r';
m['P'] = 'L'; m['p'] = 'l';
m['{'] = '?'; m['['] = '/';
m['}'] = '+'; m[']'] = '=';
m['|'] = '|'; m['\\'] = '\\';
m['A'] = 'A'; m['a'] = 'a';
m['S'] = 'O'; m['s'] = 'o';
m['D'] = 'E'; m['d'] = 'e';
m['F'] = 'U'; m['f'] = 'u';
m['G'] = 'I'; m['g'] = 'i';
m['H'] = 'D'; m['h'] = 'd';
m['J'] = 'H'; m['j'] = 'h';
m['K'] = 'T'; m['k'] = 't';
m['L'] = 'N'; m['l'] = 'n';
m[':'] = 'S'; m[';'] = 's';
m['"'] = '_'; m['\''] = '-';
m['Z'] = ':'; m['z'] = ';';
m['X'] = 'Q'; m['x'] = 'q';
m['C'] = 'J'; m['c'] = 'j';
m['V'] = 'K'; m['v'] = 'k';
m['B'] = 'X'; m['b'] = 'x';
m['N'] = 'B'; m['n'] = 'b';
m['M'] = 'M'; m['m'] = 'm';
m['<'] = 'W'; m[','] = 'w';
m['>'] = 'V'; m['.'] = 'v';
m['?'] = 'Z'; m['/'] = 'z';
m[' '] = ' ';
} int main(void) //ZOJ 3878 Convert QWERTY to Dvorak
{
//freopen ("J.in", "r", stdin); solve ();
while (getline (cin, s))
{
for (int i=; s[i]; ++i)
cout << m[s[i]];
cout << endl;
} return ;
} /*
Hi, I'm Abel, a Dvorak Layout user.
But I've only a Qwerty keyboard.
The following lines are for testing:
1234567890
`~!@#$%^&*()+_-={}[]:"'<>,.?/\|
ABCDEFuvwxyz
AXJE>Ugk,qf;
*/

 #include <iostream>
#include <stdio.h>
#include <string.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <math.h>
#include <algorithm>
using namespace std;
#define ls 2*i
#define rs 2*i+1
#define up(i,x,y) for(i=x;i<=y;i++)
#define down(i,x,y) for(i=x;i>=y;i--)
#define mem(a,x) memset(a,x,sizeof(a))
#define w(a) while(a)
#define LL long long
const double pi = acos(-1.0);
#define Len 20005
#define mod 19999997
const int INF = 0x3f3f3f3f; char s1[]= {"-=_+qwertyuiop[]QWERTYUIOP{}asdfghjkl;'ASDFGHJKL:\"zxcvbnm,./ZXCVBNM<>?"};
char s2[]= {"[]{}',.pyfgcrl/=\"<>PYFGCRL?+aoeuidhtns-AOEUIDHTNS_;qjkxbmwvz:QJKXBMWVZ"};
char c; char print(char c)
{
for(int i=; s1[i]; i++)
if(s1[i]==c)
return s2[i];
return c;
}
int main()
{
w(~scanf("%c",&c))
printf("%c",print(c)); return ;
}

网上题解,两行,给跪了!

模拟 ZOJ 3878 Convert QWERTY to Dvorak的更多相关文章

  1. zoj 3878 Convert QWERTY to Dvorak【好坑的模拟】

    Convert QWERTY to Dvorak Time Limit: 2 Seconds      Memory Limit: 65536 KB Edward, a poor copy typis ...

  2. ZOJ Problem Set - 3878 Convert QWERTY to Dvorak

    题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3878 /* 问题 很有意思的一道题目,纯模拟,注意细节和最后一 ...

  3. zoj The 12th Zhejiang Provincial Collegiate Programming Contest Convert QWERTY to Dvorak

    http://acm.zju.edu.cn/onlinejudge/showContestProblem.do?problemId=5502  The 12th Zhejiang Provincial ...

  4. (字符串 键盘转换)Convert QWERTY to Dvorak -- zoj -- 5526

    链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5526 Time Limit: 2 Seconds      Memor ...

  5. ACM学习历程—ZOJ3878 Convert QWERTY to Dvorak(Hash && 模拟)

    Description Edward, a poor copy typist, is a user of the Dvorak Layout. But now he has only a QWERTY ...

  6. Convert QWERTY to Dvorak

      Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Submit Status Pract ...

  7. BFS+模拟 ZOJ 3865 Superbot

    题目传送门 /* BFS+模拟:dp[i][j][p] 表示走到i,j,方向为p的步数为多少: BFS分4种情况入队,最后在终点4个方向寻找最小值:) */ #include <cstdio&g ...

  8. 说说qwerty、dvorak、colemak三种键盘布局

    [qwerty布局] qwerty布局大家应该都很熟悉了,全世界最普及的键盘布局. 截止到去年接触并使用dvorak布局之前,我使用了十几年qwerty布局,在http://speedtest.10f ...

  9. 贪心+模拟 ZOJ 3829 Known Notation

    题目传送门 /* 题意:一串字符串,问要最少操作数使得成为合法的后缀表达式 贪心+模拟:数字个数 >= *个数+1 所以若数字少了先补上在前面,然后把不合法的*和最后的数字交换,记录次数 岛娘的 ...

随机推荐

  1. 不用插件直接同步wordpress文章日志到新浪微博

    社会化媒体营销可以为网站带来流量,如果你的社会化媒体账号的粉丝技术够大的话!社会化媒体营销国内做得比较好的算新浪微博了.那么我们要怎样同步wordpress文章日志到新浪微博呢?当然你可以使用插件来实 ...

  2. Brackets(区间dp)

    Brackets Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3624   Accepted: 1879 Descript ...

  3. 淘宝(阿里百川)手机客户端开发日记第六篇 Service详解(五)

    我们现在对上一节中的DEMO进行改进,在服务中开启线程来执行. package com.example.service; import android.app.Service; import andr ...

  4. Autolayout及VFL经验分享

    http://www.cocoachina.com/industry/20131108/7322.html 这篇不是什么教程.Cocoa autolayout出来蛮久了.以前多次想去深入研究一下,每次 ...

  5. 使用 nginx + thin 的配置启动 rails server

    http://www.iwangzheng.com 在大师的指导下配置了新的服务器的nginx,通过top命令查看了服务器是8个cpu的,所以起了8个端口,把它们都映射到一个总的端口3600上,需要在 ...

  6. java笔试一

    JAVA相关基础知识2.String是最基本的数据类型吗?基本数据类型包括byte.int.char.long.float.double.boolean和short.java.lang.String类 ...

  7. BestCoder Round #60 题解链接

    题解  题目 1001 GT and sequence 注意先特判000的情况:如果读入的数据有000,那么去掉所有的000且最后答案和000取一个max. 剩下的正数显然全部乘起来比较优. 对于负数 ...

  8. 如何让你的scrapy爬虫不再被ban之二(利用第三方平台crawlera做scrapy爬虫防屏蔽)

    我们在做scrapy爬虫的时候,爬虫经常被ban是常态.然而前面的文章如何让你的scrapy爬虫不再被ban,介绍了scrapy爬虫防屏蔽的各种策略组合.前面采用的是禁用cookies.动态设置use ...

  9. HDU 2082 母函数模板题

    找单词 Time Limit: 1000MS   Memory Limit: 32768KB   64bit IO Format: %I64d & %I64u Submit Status De ...

  10. [MACOS] Mac上的抓包工具Charles

    转载自: http://blog.csdn.net/jiangwei0910410003/article/details/41620363 今天就来看一下Mac上如何进行抓包,之前有一篇文章介绍了使用 ...