본문 바로가기

분류 전체보기

(136)
백준 온라인 저지(BOJ) 7785 회사에 있는 사람 문제 상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다. 각 직원은 자기가 원할 때 출근할 수 있고, 아무때나 퇴근할 수 있다. 상근이는 모든 사람의 출입카드 시스템의 로그를 가지고 있다. 이 로그는 어떤 사람이 회사에 들어왔는지, 나갔는지가 기록되어져 있다. 로그가 주어졌을 때, 현재 회사에 있는 모든 사람을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는 출근, "le..
백준 온라인 저지 (BOJ) 1972 놀라운 문자열 문제 대문자 알파벳으로만 이루어져 있는 문자열이 있다. 이 문자열에 대해서 ‘D-쌍’이라는 것을 정의할 수 있는데, 이 문자열에 포함되어 있는, 거리가 D인 두 문자를 순서대로 나열한 것을 이 문자열의 D-쌍이라고 한다. 예를 들어 문자열이 ZGBG라고 하자. 이 문자열의 0-쌍은 ZG, GB, BG가 되고, 이 문자열의 1-쌍은 ZB, GG가 되며, 이 문자열의 2-쌍은 ZG가 된다. 문자열의 길이가 N이라고 할 때, 0-쌍부터 (N-2)-쌍까지가 정의됨을 알 수 있다. 만일 정의되는 D에 대해, 어떤 문자열의 모든 D-쌍들이 서로 다를 때, 이 문자열을 D-유일하다고 한다. 위의 예를 보면, 0-쌍들은 ZG, GB, BG로 모두 다르다. 따라서 이 문자열은 0-유일하며, 마찬가지로 1-유일하고, 2-..
백준 온라인 저지 (BOJ) 4539 반올림 문제 정수 x가 주어졌을 때, 10보다 크다면, 1의 자리에서 반올림하고, 결과가 100보다 크면, 10의 자리에서 반올림하고, 1000보다 크면, 100의 자리에서 반올림하고... 이와 같이 계속 반올림하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 n이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 정수 x가 주어진다. (0 ≤ x ≤ 99999999) 출력 각 테스트 케이스마다 입력으로 주어지는 정수를 문제 설명에 나온 것처럼 반올림한 결과를 출력한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #include #pragma warning(disable:6031) #pragma warning(disable:499..
백준 온라인 저지 (BOJ) 10434 행복한 소수 문제 Q. : 아래의 수열에서 다음에 올 수를 찾으시오. 313 331 367 ... 경복 : ?? 강산 : 379. 경복 : 뭐? 강산 : 행복한 소수잖아. 경복 : 행복한 뭐? 강산 : 그러니까, 자리수의 제곱의 합을 구하는 연산을 계속 반복했을 때 1이 되는 수를 행복한 수라고 하잖아. 행복한 소수는 그 중 소수인 수이고. 7은 분명 소수이다. 과연 행복할까? 7 → 72 = 49 49 → 42 + 92 = 97 97 → 92 + 72 = 130 130 → 12 + 32 + 02 = 10 10 → 12 + 02 = 1 7은 행복한 수이다 ☺. 사실 7은 행복한 소수 중 가장 작은 수이다. (이 문제에서는 1을 소수가 아닌 것으로 생각한다) 어떤 수가 주어지면 이 수가 행복한 소수인지 판정해보자. 입..
백준 온라인 저지 (BOJ) 17502 클레어와 팰린드롬 문제 클레어는 길이가 N인 팰린드롬 문자열을 가지고 있습니다. 팰린드롬 문자열이란 앞에서부터 읽으나 뒤에서부터 읽으나 같은 문자열을 뜻합니다. 예를 들어, "rotator", "racecar", "a"는 팰린드롬 문자열이지만 "palindrome", "poq" 는 팰린드롬 문자열이 아닙니다. 하루는 장난기 많은 에드거가 클레어가 가지고 있는 팰린드롬 문자열의 일부를 지워버렸습니다. 그 때문에 클레어가 많이 화가 나 있습니다. 클레어를 위해 문자열을 복구해주세요. 입력 첫 번째 줄에 문자열의 길이 N (1 ≤ N ≤ 100) 이 주어집니다. 두 번째 줄에는 일부 문자들이 지워진 길이가 N인 팰린드롬 문자열이 주어집니다. 각 문자는 알파벳 소문자이거나 '?' 이며 '?' 일 경우 해당 문자가 지워졌음을 의미..
백준 온라인 저지 (BOJ) 5988 홀수일까 짝수일까 문제 짝이 없는 경재는 매일 홀로 있다보니 홀수를 판별할 수 있는 능력이 생겼다. 창식이는 경재의 말이 사실인지 그 능력을 시험해보려 한다. 창식이의 의심이 끝이 없을 것 같아 N개만 확인하기로 정했다. N개의 정수가 주어지면 홀수인지 짝수인지를 출력하는 프로그램을 만들어 경재의 능력을 검증할 수 있게 도와주자. 입력 첫 번째 줄에 숫자의 개수 N(1
백준 온라인 저지 (BOJ) 1212 8진수 2진수 문제 8진수가 주어졌을 때, 2진수로 변환하는 프로그램을 작성하시오. 입력 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. 출력 첫째 줄에 주어진 수를 2진수로 변환하여 출력한다. 수가 0인 경우를 제외하고는 반드시 1로 시작해야 한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include #pragma warning(disable:4996) #pragma warning(disable:6031) char input[340000]; char a[8][4] = { "0" ,"1","10","11","100","101","110","111" }; char b[8][4] = { "000" ,"001","010","011","100","101","..
백준 온라인 저지 (BOJ) 1339 단어수학 문제 민식이는 수학학원에서 단어 수학 문제를 푸는 숙제를 받았다. 단어 수학 문제는 N개의 단어로 이루어져 있으며, 각 단어는 알파벳 대문자로만 이루어져 있다. 이때, 각 알파벳 대문자를 0부터 9까지의 숫자 중 하나로 바꿔서 N개의 수를 합하는 문제이다. 같은 알파벳은 같은 숫자로 바꿔야 하며, 두 개 이상의 알파벳이 같은 숫자로 바뀌어지면 안 된다. 예를 들어, GCF + ACDEB를 계산한다고 할 때, A = 9, B = 4, C = 8, D = 6, E = 5, F = 3, G = 7로 결정한다면, 두 수의 합은 99437이 되어서 최대가 될 것이다. N개의 단어가 주어졌을 때, 그 수의 합을 최대로 만드는 프로그램을 작성하시오. 입력 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. ..
백준 온라인 저지 (BOJ) 1225 이상한 곱셈 문제 A*B를 계산하다 지겨워진 형택이는 A*B를 새로운 방법으로 정의하려고 한다. A에서 한 자리를 뽑고 * B에서 임의로 한 자리를 뽑아 곱한다. 의 가능한 모든 조합 (A가 n자리, B가 m자리 수라면 총 가능한 조합은 n*m개)을 더한 수로 정의하려고 한다. 예를 들어 121*34는 1*3 + 1*4 + 2*3 + 2*4 + 1*3 + 1*4 = 28 이 된다. 이러한 형택이의 곱셈 결과를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. 주어지는 두 수는 모두 10,000자리를 넘지 않는다. 출력 첫째 줄에 형택이의 곱셈 결과를 출력한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include #include #pragma warn..
백준 온라인 저지 (BOJ) 10823 더하기 2 문제 숫자와 콤마로만 이루어진 문자열 S가 주어진다. 이때, S에 포함되어있는 자연수의 합을 구하는 프로그램을 작성하시오. S의 첫 문자와 마지막 문자는 항상 숫자이고, 콤마는 연속해서 주어지지 않는다. 주어지는 수는 항상 자연수이다. 입력 문자열 S가 여러 줄에 걸쳐서 주어진다. S의 길이는 최대 10,000이다. 포함되어있는 정수는 1,000,000보다 작거나 같은 자연수이다. 출력 문자열 S에 포함되어 있는 자연수의 합을 출력한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include #include #include #pragma warning(disable:4996) #pragma warning(disable:6031) char temp[..