목록string (3)
알고리즘 모음(C++)
문제 링크입니다. https://www.acmicpc.net/problem/5988 5988번: 홀수일까 짝수일까 짝이 없는 경재는 매일 홀로 있다보니 홀수를 판별할 수 있는 능력이 생겼다. 창식이는 경재의 말이 사실인지 그 능력을 시험해보려 한다. 창식이의 의심이 끝이 없을 것 같아 N개만 확인하기 www.acmicpc.net 간단한 문제였지만, string을 사용해야하는 문제였습니다. 수의 범위가 최대 10^60임으로 int 나 long long 으로 값을 받지 못합니다. 저는 문자열로 값을 받아 홀수, 짝수를 판별했습니다. 1. 홀짝 판별하기 void solve() { for (int i = 0; i < N; i++) { int check = num[i][num[i].size() - 1] - '0'..
문제 링크입니다. https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net map과 string을 이용하면 간단하게 풀 수 있는 문제였습니다. N과 M의 범위가 100,000 이기에 pair를 사용해 다중 for 문을 사용하면 시간 초과가 생길 수 있습니다. 따라서 map을 이용해, 사이트 주소와 비밀번호를 저장한 뒤, 해당 사이트의 비밀번호만 출력할 수 있도록 해야합니다. 이를 생각하고 풀면 간단한 문제였습니다. 자세한 ..
문제 링크입니다. https://www.acmicpc.net/problem/5525 5525번: IOIOI N+1개의 I와 N개의 O로 이루어져 있으면, I와 O이 교대로 나오는 문자열을 PN이라고 한다. P1 IOI P2 IOIOI P3 IOIOIOI PN IOIOI...OI (O가 N개) I와 O로만 이루어진 문자열 S와 정수 N이 주어졌을 때, S안에 PN이 몇 www.acmicpc.net 문자열을 이용한 문제였습니다. "IOI" 를 확인하는 과정에서 다중 for문을 사용한다면 시간초과가 생기기에 다른 접근이 필요한 문제였습니다. 저같은 경우에는 IOI가 연속적으로 몇번 나오는지를 확인하는 방법으로 풀었습니다. 예제입력을 통해서 확인해보겠습니다. OOIOIOIOIIOII 해당 문자열이 주어졌을때, ..