[C++] 백준(BOJ) - 8892번 팰린드롬
2022. 2. 28. 00:27
문제
https://www.acmicpc.net/problem/8892
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n;
string s[101];
bool isPal(string s){
for(int i=0;2*i<s.size();i++){
if(s[i]!=s[s.size()-i-1])
return false;
}
return true;
}
void solve(){
cin >> n;
for(int i=0;i<n;i++){
cin >> s[i];
}
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
if(i==j) continue;
if(isPal(s[i]+s[j])){
cout << s[i] + s[j] << endl;
return;
}
}
}
cout << '0'<<'\n';
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int k;
cin >> k;
while(k--){
solve();
}
return 0;
}
Brute Force 방식으로 접근하여 풀이하였다.
팰린드롬인지 아닌지를 판별하는 isPal 함수를 작성하고,
모든 문자열을 입력받아 합쳐서 그 중 팰린드롬이 되는 경우를 출력하였다.
'Algorithm' 카테고리의 다른 글
[C++] 백준(BOJ)-15975번 화살표 그리기 (0) | 2022.07.15 |
---|---|
[C++ STL] std::vector 사용법과 동작방식 (0) | 2022.05.15 |
[C++] 백준(BOJ) - 1448번 삼각형 만들기 (0) | 2022.02.28 |
[C++] 백준(BOJ) - 11055번 가장 큰 증가 부분 수열 (0) | 2022.02.27 |
[C++] 백준(BOJ) - 18870번 좌표 압축 (0) | 2022.02.21 |