Питон
даша часто забывала свой пароль от codeforces, поэтому она решила записать его в тетрадку. но она испугалась, что злоумышленник сможет подсмотреть ее пароль, зайти под ее логином, и украсть все ее решения. поэтому она решила разделить пароль на две части, и записать их отдельно: одну часть в тетрадку по , а другую — в тетрадку по языку.
даша разделила пароль следующим образом. буквы с нечетными номерами (первая, третья, и т. д.) она записала в первую тетрадку, а буквы с четными номерами (вторая, четвертая, и т. д.) — во вторую тетрадку.
теперь даша просит вас написать программу, которая по двум строкам, записанным в тетрадки, восстанавливает ее пароль.
входные данные
ввод содержит две строки, первая строка — это буквы пароля с нечетными номерами, вторая строка — это буквы пароля с четными номерами. обе строки не пустые, состоят только из букв, и имеют длину не больше 10.
выходные данные
выведите одну строку — пароль даши.
примеры
входные данныескопировать
pswr
asod
выходные данныескопировать
password
входные данныескопировать
qet
wr
выходные данныескопировать
qwert
Объяснение:
Если и считать всё в двоичной системе, то надо сначала все числа перевести в неё.
Перевод из шестнадцатеричной в двоичную- каждая шестнадцатеричная цифра заменяется на четыре двоичных, затем незначащие нули спереди- отбрасываются:
10₁₆ = 00010000₂ = 10000₂
Перевод из восьмеричной в двоичную- каждая восьмеричная цифра заменяется на три двоичных, затем незначащие нули спереди- отбрасываются:
10₈ = 001000₂ = 1000₂
Получаем в итоге пример:
10000₂ + 1000₂ + 10₂* 10000₂ = 10000₂ + 1000₂ + 100000₂ =
= 111000₂
ЯП: С++
#include <iostream>
int main() {
const int N = 5;
int arr[N][N] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25}; // создаем и заполняем двумерный массив 5x5
for (int i = 0; i < N; i++) // выводим на экран 2-мерный массив;
{
for (int j = 0; j < N; j++)
{
std::cout << arr[i][j] << "\t";
}
std::cout << std::endl;
}
std::cout << "Result #1: ";
for (int i = 0; i < N; i++) // вывод в консоль главной диагонали
{
std::cout << arr[i][i] << "\t";
}
std::cout << "\nResult #2: ";
for (int i = 0; i < N; i++) // вывод в консоль побочной диагонали
{
std::cout << arr[i][N - 1 - i] << "\t";
}
return 0;
}
Объяснение: