Решение задачи Раскладки клавиатуры с Codeforces

Без пояснения   Просмотров: 37


В Берляндии распространены две раскладки для клавиатур, которые различаются только порядком следования букв на клавишах. Все остальные клавиши совпадают. В Берляндии используют алфавит, который содержит 26 букв и совпадает с английским.

Вам будут заданы две строки по 26 букв в каждой — все клавиши первой и второй раскладки в порядке слева направо сверху вниз.

Также вам будет задан набранный текст, который состоит из прописных и строчных букв английского алфавита и цифр. Известно, что он был набран по ошибке в первой раскладке, хотя хотели набрать его во второй. Выведите этот текст, если бы использовалась вторая раскладка, а не первая при его наборе.

Так как все клавиши кроме буквенных совпадают, то регистр букв и символы отличные от букв остаются неизменными.

Код

#include<iostream>
#include<string>
using namespace std;

int main(){
	string a, b, c;
	cin >> a >> b >> c;
	for(int i = 0; i < c.length(); i++){
		if(c[i] < 59){
			cout << c[i];
			continue;
		}
		for(int j = 0; j < 26; j++){
			if(c[i] == a[j]) cout << b[j];
			if(c[i] == a[j] - 32) cout << char(b[j] - 32);	
		}
	}
}

         

Администратор Photo Автор: Администратор



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться