Notice
Recent Posts
Recent Comments
Link
알고리즘 모음(C++)
백준 10176 - Opposite Words(C++) 본문
문제 링크입니다. https://www.acmicpc.net/problem/10176
문자열을 사용한 문제입니다.
자세한 것은 코드를 참고해주세요
#define _CRT_SECURE_NO_WARNINGS
#include <cstring>
#include <vector>
#include <iostream>
#include <algorithm>
#include <queue>
#include <cmath>
#include <cstdio>
#include <string>
#include <deque>
#define P pair<long long, long long>
#define PP pair<P, int>
#define F first
#define S second
using namespace std;
int N;
string arr;
bool solve() {
// 전부 대문자로 바꿔준다.
string New;
for(int i = 0; i < arr.size(); i++){
if(arr[i] >= 'a' && arr[i] <= 'z'){
New += arr[i] - 'a' + 'A';
}
if(arr[i] >= 'A' && arr[i] <= 'Z'){
New += arr[i];
}
}
// 전부 정렬해준다.
sort(New.begin(), New.end());
// 정렬해준 순서대로 opposite한 단어를 찾는다.
string Re;
for(int i = 0; i < New.size(); i++){
Re += 'Z' - (New[i] - 'A');
}
sort(Re.begin(), Re.end());
for(int i = 0; i < New.size(); i++){
if(Re[i] != New[i]) return false;
}
return true;
}
int main() {
cin.tie(0);
cout.tie(0);
cin >> N;
for(int i = 1; i <= N; i++){
cin >> arr;
if(solve()) cout << "Yes" << "\n";
else cout << "No" << "\n";
}
return 0;
}
질문 및 조언 댓글 남겨주세요
'백준' 카테고리의 다른 글
백준 24444 - 알고리즘 수업 - 너비 우선 탐색 1 (C++) (0) | 2022.12.08 |
---|---|
백준 17071 - 숨바꼭질 5(C++) (0) | 2022.08.21 |
백준 17504 - 제리와 톰(C++) (0) | 2022.08.21 |
백준 25431 - 인공신경망(C++) (2) | 2022.08.21 |
백준 1726 - 로봇(C++) (0) | 2022.08.11 |