알고리즘/BOJ 1235

백준 1919번 애너그램 만들기

문제 링크입니다: https://www.acmicpc.net/problem/1919 두 문자열에 포함된 알파벳의 개수가 다른만큼 빼준 것을 출력하면 되는 문제였습니다. #include #include using namespace std; int alphabet1[26], alphabet2[26]; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); string a, b; cin >> a >> b; for (int i = 0; i < a.length(); i++) alphabet1[a[i] - 'a']++; for (int i = 0; i < b.length(); i++) alphabet2[b[i] - 'a']++; int cnt = 0; for (in..

알고리즘/BOJ 2018.10.27

백준 9933번 민균이의 비밀번호

문제 링크입니다: https://www.acmicpc.net/problem/9933 문자열이 팰린드롬인 경우는 한번만 등장한다는 함정이 있었던 문제였습니다.팰린드롬이 답이 아닌 경우는 map을 통해 뒤집혔던 비밀번호가 나왔는지 확인할 수 있습니다! #include #include #include #include using namespace std; map visited; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; for (int i = 0; i > s; string temp = s; reverse(temp.begin(), temp.end()); //팰린드롬인 경우 ..

알고리즘/BOJ 2018.10.27

백준 5598번 카이사르 암호

문제 링크입니다: https://www.acmicpc.net/problem/5598 변환 전 문자열이 주어지고 변환하라는 문제인줄 알았지만 사실은 변환된 문자열을 주고 변환 전 문자열로 만들라는 문제였습니다.문제를 꼼꼼히 읽어야한다는 교훈을 준 문제였습니다. #include #include using namespace std; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); string s, result; cin >> s; for (int i = 0; i < s.length(); i++) if (s[i] < 'D') result += s[i] - 'A' + 'X'; else result += s[i] - 'D' + 'A'; cout

알고리즘/BOJ 2018.10.27

백준 1032번 명령 프롬프트

문제 링크입니다: https://www.acmicpc.net/problem/1032 흥미로운 문제였습니다. 알고리즘은 아래와 같습니다.1. 주어지는 문자열들의 길이는 모두 같지만 문자열의 길이를 모르므로 string result를 선언하여 첫 번째 문자열과 똑같이 저장합니다.2. 2번째부터 N번째 문자열을 첫번째 문자열과 비교해 다른 인덱스들을 모두 '?'으로 저장합니다.3. result을 출력합니다. #include #include using namespace std; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; string s; cin >> s; string result = s; for (int i = 1; i..

알고리즘/BOJ 2018.10.27

백준 1316번 그룹 단어 체커

문제 링크입니다: https://www.acmicpc.net/problem/1316 간단한 문자열 처리 문제였습니다.prev 변수를 통해 기존 알파벳과 다른 알파벳이 나오는지 확인하고 해당 알파벳이 이미 등장했던 알파벳이면 그룹단어가 아니라고 체크해주면 됩니다. #include #include #include using namespace std; bool alphabet[26]; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); int N; cin >> N; int cnt = 0; for (int i = 0; i > s; ch..

알고리즘/BOJ 2018.10.27

백준 5622번 다이얼

문제 링크입니다: https://www.acmicpc.net/problem/5622 간단한 문자열 처리 문제였습니다.스위치 문을 잘 이용하면 쉽게 풀 수 있는 문제였습니다. #include #include using namespace std; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); string s; cin >> s; long long result = 0; for (int i = 0; i < s.length(); i++) { switch (s[i]) { case 'A': case 'B': case 'C': result += 3; break; case 'D': case 'E': case 'F': result += 4; break; case '..

알고리즘/BOJ 2018.10.27