본문 바로가기

cpp450

[백준] 4447번 : 좋은놈 나쁜놈 (C++) 4447번 : 좋은놈 나쁜놈 문제 ) 비키니시티에는 초능력을 가진 수퍼 히어로들로 바글바글하다. 스폰지밥과 패트릭은 주어진 문자열로 좋은놈과 나쁜놈을 골라내려 한다. 스폰지밥: 우와, 문자열에서 강한 힘이 느껴지는데! 근데 좋은 놈인지 나쁜 놈인지 알 길이 없네. 패트릭: 아니, 쉬운 것 같은데? 그냥 이름에서 'g'의 개수와 'b'의 개수만 세면 돼. 'g'가 더 많으면 좋은 놈. 'b'가 더 많으면 나쁜 놈. 위대하신 히어로 중의 히어로 'Algorithm Crunching Man' 을 떠올려 봐. 'g'가 2개 있고 'b'는 없지. 스폰지밥: 오, 그렇구만. 그럼 'Green Lantern' 은 좋은 놈이고 'Boba Fett' 은 나쁜 놈이네? 패트릭: 크~ 정답! 근데 'Boba Fett'이 누.. 2023. 2. 13.
[백준] 7600번 : 문자가 몇갤까 (C++) 7600번 : 문자가 몇갤까 문제 ) "The quick brown fox jumped over the lazy dogs." 이 문장은 모든 알파벳이 적어도 한 번은 나오는 문장으로 유명하다. 즉 26개의 서로 다른 문자를 갖고 있는 것이다. 각 케이스마다 문장에서 공백, 숫자, 특수 문자를 제외하고 얼마나 다양한 알파벳이 나왔는지를 구하면 된다. 대소문자는 하나의 문자로 처리한다. ex) 'A' == 'a' 입력 : 입력은 250자를 넘지 않는 문장이 주어진다. 각 문장은 적어도 하나의 공백이 아닌 문자를 포함한다. (알파벳이 아닐 수 있다) 마지막 줄에는 '#'이 주어진다. 출력 : 각 줄마다 출몰한 알파벳의 개수를 출력하면 된다. 풀이) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1.. 2023. 2. 13.
[백준] 4592번 : 중복을 없애자 (C++) 4592번 : 중복을 없애자 문제 ) Al의 초콜릿 망고 회사는 방문자들이 2d 단지에 얼마나 많은 초콜릿 망고가 있는지 추측할 수 있는 웹 사이트를 갖고 있다. 방문자들은 1부터 99까지의 수를 추측한 후 "제출" 버튼을 누르는데, 안타깝게도 서버로부터 응답시간이 종종 길어져 방문자들이 이성을 잃은 나머지 "제출"을 연타하는 사태가 발생한다. 이게 우리가 해결해야 할 문제다. ACM의 직원을 도와 연타된 중복을 걸러보자. 입력 : 각 줄마다 처음으로 정수 N(0 < N ≤ 25)이 주어진다. 그 다음 N개에 걸쳐 1부터 99 사이의 수가 주어진다. 마지막 줄에 입력의 끝을 알리는 0이 주어진다. 출력 : 각 케이스마다 한 줄씩 연속하는 중복을 제거한 원래의 제출 상태를 출력한다. 각 줄의 마지막에는 한.. 2023. 2. 13.
[백준] 2947번 : 나무 조각 (C++) 2947번 : 나무 조각 문제 ) 동혁이는 나무 조각을 5개 가지고 있다. 나무 조각에는 1부터 5까지 숫자 중 하나가 쓰여져 있다. 또, 모든 숫자는 다섯 조각 중 하나에만 쓰여 있다. 동혁이는 나무 조각을 다음과 같은 과정을 거쳐서 1, 2, 3, 4, 5 순서로 만들려고 한다. 첫 번째 조각의 수가 두 번째 수보다 크다면, 둘의 위치를 서로 바꾼다. 두 번째 조각의 수가 세 번째 수보다 크다면, 둘의 위치를 서로 바꾼다. 세 번째 조각의 수가 네 번째 수보다 크다면, 둘의 위치를 서로 바꾼다. 네 번째 조각의 수가 다섯 번째 수보다 크다면, 둘의 위치를 서로 바꾼다. 만약 순서가 1, 2, 3, 4, 5 순서가 아니라면 1 단계로 다시 간다. 처음 조각의 순서가 주어졌을 때, 위치를 바꿀 때 마다 .. 2023. 2. 12.