メモに単語が n 個、一行に一つずつ書かれている。 一番目の単語からは一番目の文字を、二番目の単語からは二番目の文字を、というように、i 番目の単語から i 番目の文字を抜き出す。 i 番目の単語の長さが i より短くて抜き出す文字がなければ、文字の代わりに * を書く。 一行目に n が与えられ、続く n 行に単語が一つずつ与えられる。 こうして得た n 個を一番目の単語のものから順に、空白を入れずにつなげて一行に出力せよ。
n = int(input())answer = ""for i in range(n): word = input().strip() if i < len(word): # 번호는 0부터라서 i째 낱말의 글자 번호는 0 ~ len - 1 answer += word[i] else: answer += "*"print(answer)
JavaScriptmain.js · 9 行
const lines = require("fs").readFileSync(0, "utf8").split("\n");const n = Number(lines[0]);let answer = "";for (let i = 0; i < n; i++) { const word = lines[i + 1].trim(); // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ length - 1 answer += i < word.length ? word[i] : "*";}console.log(answer);
TypeScriptmain.ts · 10 行
import { readFileSync } from "node:fs";const lines: string[] = readFileSync(0, "utf8").split("\n");const n: number = Number(lines[0]);let answer = "";for (let i = 0; i < n; i++) { const word: string = lines[i + 1].trim(); // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ length - 1 answer += i < word.length ? word[i] : "*";}console.log(answer);
JavaMain.java · 17 行
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOException { BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(in.readLine().trim()); StringBuilder answer = new StringBuilder(); for (int i = 0; i < n; i++) { String word = in.readLine().trim(); // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ length() - 1 answer.append(i < word.length() ? word.charAt(i) : '*'); } System.out.println(answer); }}
C#Main.cs · 18 行
using System;using System.Text;class Program{ static void Main() { int n = int.Parse(Console.ReadLine()); var answer = new StringBuilder(); for (int i = 0; i < n; i++) { string word = Console.ReadLine().Trim(); // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ Length - 1 answer.Append(i < word.Length ? word[i] : '*'); } Console.WriteLine(answer); }}
C++main.cpp · 16 行
#include <iostream>#include <string>int main() { int n; std::cin >> n; std::string answer; for (int i = 0; i < n; i++) { std::string word; std::cin >> word; // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ size() - 1 if (i < static_cast<int>(word.size())) answer += word[i]; else answer += '*'; } std::cout << answer << '\n';}
Cmain.c · 16 行
#include <stdio.h>#include <string.h>int main(void) { int n; if (scanf("%d", &n) != 1) return 0; char word[101]; for (int i = 0; i < n; i++) { if (scanf("%100s", word) != 1) return 0; // C는 범위를 검사해 주지 않으니 길이를 직접 물어야 한다 if (i < (int)strlen(word)) putchar(word[i]); else putchar('*'); } putchar('\n'); return 0;}
Craykonmain.cray · 16 行
n = コンソール.行読み().数に();answer = "";繰り返す (i = 0; i < n; i++){ word = コンソール.行読み().空白除去(); // 번호는 0부터라서 쓸 수 있는 글자 번호는 0 ~ 길이 - 1 もし (i < word.長さ) { answer += word[i]; } でなければ { answer += "*"; }}コンソール.書く(answer);