{ }codelper
문자열 뒤집기조건문P0004

회문 판별

영어 소문자로 된 단어가 하나 주어진다.
앞에서 읽으나 뒤에서 읽으나 같으면(회문) "예", 아니면 "아니요"를 출력하라.

입력
단어 길이 1 ~ 100, 영어 소문자만
출력
"예" 또는 "아니요"
예시 1 · stdin
level
stdout
예
예시 2 · stdin
code
stdout
아니요
main.py
입력(stdin)

실행하면 이 줄들이 차례로 input()·표준 입력으로 들어가요(실행 중에 묻지 않아요).

$ 준비됐어요

코드를 입력해 풀려면 PC에서 열어 주세요. 모바일에서는 문제와 풀이를 볼 수 있어요.

다른 언어로는?언어별 풀이 보기 · 8개 언어 풀이

뒤집기 한 줄: Python s[::-1], Java new StringBuilder(s).reverse(), C++ string(s.rbegin(), s.rend()).
C는 양 끝에서 가운데로 비교하는 반복문이 가장 자연스러워요.

Pythonmain.py · 2 줄
s = input().strip()print("예" if s == s[::-1] else "아니요")
JavaScriptmain.js · 2 줄
const s = require("fs").readFileSync(0, "utf8").trim();console.log(s === [...s].reverse().join("") ? "예" : "아니요");
TypeScriptmain.ts · 3 줄
import { readFileSync } from "node:fs";const s: string = readFileSync(0, "utf8").trim();console.log(s === [...s].reverse().join("") ? "예" : "아니요");
JavaMain.java · 9 줄
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) ? "예" : "아니요");    }}
C#Main.cs · 12 줄
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 ? "예" : "아니요");    }}
C++main.cpp · 8 줄
#include <iostream>#include <string> int main() {    std::string s;    std::cin >> s;    std::cout << (std::string(s.rbegin(), s.rend()) == s ? "예" : "아니요") << '\n';}
Cmain.c · 12 줄
#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;}
Craykonmain.cray · 9 줄
s = 콘솔.줄읽기();만약 (s.뒤집기() == s){    콘솔.쓰기("예");}아니면{    콘솔.쓰기("아니요");}