알고리즘 공부/C++

백준 5218번 알파벳 거리 C++

마달랭 2024. 7. 20. 22:41
반응형

리뷰

문자열을 입력 받고 각 문자끼리 비교 후 거리를 출력하는 문제

 

문제 풀이

  1. 문자열을 a, b를 입력 받고 b의 문자가 a보다 크거나 같을 경우 b - a, 아닐 경우 b + 26 - a를 해주면 된다.
  2. 각 케이스 마다 정답을 출력 형식에 맞게 출력

 

참고 사항

뒷 문자열에서 앞 문자열을 기준으로 비교해 주어야 한다.

C++에서 문자열 연산이 아스키코드를 반환해서 파이썬 보단 편한 것 같다.

 

정답 코드

#include <iostream>
#include <string>

using namespace std;

int main() {
	int n;
	cin >> n;
	while (n--) {
		string a, b;
		cin >> a >> b;
		string ans = "Distances:";
		for (int i = 0; i < a.size(); i++) {
			if (b[i] >= a[i]) ans += " " + to_string(b[i] - a[i]);
			else ans += " " + to_string(b[i] + 26 - a[i]);
		}
		cout << ans << "\n";
	}
}

 

 

728x90
반응형