[백준 4999] 아! (C#, C++) - soo:bak
작성일 :
문제 링크
설명
입력된 두 감탄사의 길이를 비교하여 조건을 만족하는지 판단하는 간단한 문자열 구현 문제입니다.
문제의 조건을 정리하면 다음과 같습니다:
- 첫 번째 줄에 의사 선생님이 필요한 만큼의
a
를 포함한 감탄사가 입력으로 주어집니다. - 두 번째 줄에 환자가 실제로 말한 감탄사가 입력으로 주어집니다.
- 환자가 의사 선생님보다 같거나 더 많은 길이의
a
를 말해야 진찰을 받을 수 있습니다.
이 문제는 결국 두 문자열의 길이를 비교하여,
첫 번째 문자열이 두 번째 문자열보다 길거나 같으면 go
를, 짧으면 no
를 출력하면 됩니다.
문자열의 구성은 항상 a...a!
형식이기 때문에, 실제 비교는 전체 문자열 길이를 기준으로 판별하여도 충분합니다.
접근법
-
먼저 두 개의 문자열을 입력받습니다
-
각 문자열의 길이를 비교합니다:
- 첫 번째 문자열의 길이가 두 번재 문자열의 길이보다 길거나 같다면 조건을 만족하므로
go
를 출력합니다. - 그렇지 않다면
no
를 출력합니다.
- 첫 번째 문자열의 길이가 두 번재 문자열의 길이보다 길거나 같다면 조건을 만족하므로
추가적인 문자열 처리 없이도 문자열 길이만으로 충분히 문제를 해결할 수 있는 간단한 조건 비교 문제입니다.
Code
[ C# ]
1
2
3
4
5
6
7
8
9
10
11
12
13
using System;
class Program {
static void Main() {
string p = Console.ReadLine();
string d = Console.ReadLine();
if (p.Length >= d.Length)
Console.WriteLine("go");
else
Console.WriteLine("no");
}
}
[ C++ ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
string maxV; cin >> maxV;
string tarV; cin >> tarV;
if (maxV.size() >= tarV.size()) cout << "go\n";
else cout << "no\n";
return 0;
}