관리 메뉴

어읽로꾸거

BOJ 4287 Word Ratios 본문

알고리즘

BOJ 4287 Word Ratios

어읽로꾸거 2019. 4. 1. 19:20

백준 링크

https://www.acmicpc.net/problem/4287

풀이

각 자리마다 몇개 차이나는지 구하고, 출력하면 됩니다. 🤪

코드

#include<iostream>
#include<string>
using namespace std;
int diff(int a, int b) { //몇개 차이나는지 구함
    if (b - a >= 0) 
        return b - a;
    else 
        return 26 - (a - b);
}
char change(char c, int n) { //바꿔줌
    if (n == 0) 
        return c;
    else {
        if (c == 'z')
            return change('a', n - 1);
        else
            return change(c + 1, n - 1);
    }
}
int main() {
    freopen("input.txt", "r", stdin);
    int t;
    while (1) {
        string s[4];
        cin >> s[0];
        if (s[0][0] == '#') break;
        cin >> s[1] >> s[2];
        for (int i = 0; i < s[0].length(); i++) {
            t = diff(s[0][i], s[1][i]); 
            s[3].push_back(change(s[2][i], t));
        }
        cout << s[0] << ' ' << s[1] << ' ' << s[2] << ' ' << s[3] << endl;
    }
}

'알고리즘' 카테고리의 다른 글

BOJ 5558 チーズ  (0) 2019.04.05
BOJ 2975 Transactions  (0) 2019.04.02
BOJ 2504 괄호의 값  (0) 2019.03.31
BOJ 16118 달빛여우  (0) 2019.03.30
BOJ 16469 소년 점프  (0) 2019.03.28