[工程师死绝的世界D4003]アンドロイドの生産工場 翻译及题解

[工程师死绝的世界D4003]アンドロイドの生産工場 翻译及题解

机器人生产工厂

Translation by KSkun

原题:問題「アンドロイドの生産工場」 | エンジニアが死滅シタ世界 〜アンドロイドとふたりぼっちで生きろ〜

问题描述

你有一个加密了的字符串S。
你发现只需要将S中第奇数位的字符提取出来,就可以解读这个加密后的字符串了。

请将S中第奇数位的字符提取出来,解密这个字符串。

输入格式

S
  • 第一行包含加密后的字符串S。
  • 在输入的最后,包含一个换行符。

输出格式

请输出将S中第奇数位的字符提取出来的字符串。

条件

  • 1 ≦ 字符串S的长度 ≦ 100
  • S_i是只由半角英文字符构成的字符串

输入输出样例

输入输出样例1

输入:

PXaXiXzXaX

输出:

Paiza

输入输出样例2

输入:

abcdefghij

输出:

acegi

题解

// Code by KSkun, 2019/1
#include <cstdio>
#include <cctype>
#include <cstring>

#include <algorithm>

typedef long long LL;

inline char fgc() {
    static char buf[100000], *p1 = buf, *p2 = buf;
    return p1 == p2 && (p2 = (p1 = buf) + fread(buf, 1, 100000, stdin), p1 == p2)
        ? EOF : *p1++;
}

inline LL readint() {
    LL res = 0, neg = 1; char c = fgc();
    for(; !isdigit(c); c = fgc()) if(c == '-') neg = -1;
    for(; isdigit(c); c = fgc()) res = res * 10 + c - '0';
    return res * neg;
}

inline char readsingle() {
    char c;
    while(!isgraph(c = fgc())) {}
    return c;
}

char S[105];

int main() {
    scanf("%s", S + 1);
    int len = strlen(S + 1);
    for(int i = 1; i <= len; i++) {
        if(i & 1) {
            putchar(S[i]);
        }
    }
    puts("");
    return 0;
}


发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据