回文判定
英小文字からなる単語が一つ与えられる。
前から読んでも後ろから読んでも同じ(回文)なら "はい"、そうでなければ "いいえ" を出力せよ。
- 入力
- 単語の長さ 1〜100、英小文字のみ
- 出力
- "はい" または "いいえ"
level
はい
code
いいえ
英小文字からなる単語が一つ与えられる。
前から読んでも後ろから読んでも同じ(回文)なら "はい"、そうでなければ "いいえ" を出力せよ。
level
はい
code
いいえ
実行すると、これらの行が順に input()・標準入力に渡されます(実行中に入力を求めません)。
$ 準備完了
コードを入力して解くにはパソコンで開いてください。モバイルでは問題と解答を見られます。
一行で反転:Python s[::-1]、Java new StringBuilder(s).reverse()、C++ string(s.rbegin(), s.rend())。
C では両端から中央へ比べるループが自然です。
s = input().strip()print("はい" if s == s[::-1] else "いいえ")const s = require("fs").readFileSync(0, "utf8").trim();console.log(s === [...s].reverse().join("") ? "はい" : "いいえ");import { readFileSync } from "node:fs";const s: string = readFileSync(0, "utf8").trim();console.log(s === [...s].reverse().join("") ? "はい" : "いいえ");import java.util.Scanner; public class Main { public static void main(String[] args) { String s = new Scanner(System.in).next(); String r = new StringBuilder(s).reverse().toString(); System.out.println(r.equals(s) ? "はい" : "いいえ"); }}using System; class Program{ static void Main() { string s = Console.ReadLine().Trim(); char[] r = s.ToCharArray(); Array.Reverse(r); Console.WriteLine(new string(r) == s ? "はい" : "いいえ"); }}#include <iostream>#include <string> int main() { std::string s; std::cin >> s; std::cout << (std::string(s.rbegin(), s.rend()) == s ? "はい" : "いいえ") << '\n';}#include <stdio.h>#include <string.h> int main(void) { char s[101]; scanf("%100s", s); int n = strlen(s), ok = 1; for (int i = 0; i < n / 2; i++) if (s[i] != s[n - 1 - i]) ok = 0; puts(ok ? "はい" : "いいえ"); return 0;}s = コンソール.行読み();もし (s.逆に() == s){ コンソール.書く("はい");}でなければ{ コンソール.書く("いいえ");}