우리 생활을 더 편리하게 만들기 위한
이야기를 써내려갑니다 🚀

최근 글들을 확인해보세요 →

백준 #6581 HTML

개발/ProblemSolving / 2020.04.06
오로지 , 태그와 그 외 평문으로만 주어지는 HTML 문서가 있을 때, 그 결과를 보여주는 코드를 작성하시오. 한 줄에는 80자보다 많은 글자가 출력되어서는 안 된다. https://www.acmicpc.net/problem/6581 정답 뜨자마자 정리하는 따끈한 글! 해당 문제는 입력으로 HTML 코드가 들어오면 파싱해서 결과를 출력해주면 되는 문제이다. 단, 조건이 있는데 한 줄에는 80자 이상을 출력할 수 없고 80줄이 넘으면 줄바꿈 후 출력한다. 태그가 주어지면 줄바꿈을 한다. 태그가 주어지면 줄바꿈 후 라면 - 문자 80개를 출력하고 아니라면 줄바꿈 후 출력한다. 위 조건에 맞게 구현을 해주면 된다. 처음 접근 방식은 vector에 \n (newline) 기호를 넣어주고 출력해보면 되지 않을까 ..

백준 #8979 올림픽

개발/ProblemSolving / 2020.03.13
올림픽은 참가에 의의가 있기에 공식적으로는 국가간 순위를 정하지 않는다. 그러나, 많은 사람들이 자신의 국가가 얼마나 잘 하는지에 관심이 많기 때문에 비공식적으로는 국가간 순위를 정하고 있다. 두 나라가 각각 얻은 금, 은, 동메달 수가 주어지면, 보통 다음 규칙을 따라 어느 나라가 더 잘했는지 결정한다. 금메달 수가 더 많은 나라 금메달 수가 같으면, 은메달 수가 더 많은 나라 금, 은메달 수가 모두 같으면, 동메달 수가 더 많은 나라 각 국가는 1부터 N 사이의 정수로 표현된다. 한 국가의 등수는 (자신보다 더 잘한 나라 수) + 1로 정의된다. 만약 두 나라가 금, 은, 동메달 수가 모두 같다면 두 나라의 등수는 같다. 예를 들어, 1번 국가가 금메달 1개, 은메달 1개를 얻었고, 2번 국가와 3번..

백준 #2688 줄어들지 않아

개발/ProblemSolving / 2020.03.12
어떤 숫자가 줄어들지 않는다는 것은 그 숫자의 각 자리 수보다 그 왼쪽 자리 수가 작거나 같을 때 이다. 예를 들어, 1234는 줄어들지 않는다. 줄어들지 않는 4자리 수를 예를 들어 보면 0011, 1111, 1112, 1122, 2223이 있다. 줄어들지 않는 4자리수는 총 715개가 있다. 이 문제에서는 숫자의 앞에 0(leading zero)이 있어도 된다. 0000, 0001, 0002는 올바른 줄어들지 않는 4자리수이다. n이 주어졌을 때, 줄어들지 않는 n자리 수의 개수를 구하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/2688 DP문제입니다! 문제를 풀면서 알았는데 문제의 특징을 뽑아 점화식을 설계하면 편리한거 같습니다. 자릿수 n이 주어지고 줄어들지..

최대공약수와 최소공배수

개발/ProblemSolving / 2019.12.22
최대공약수 최대공약수를 구하는 알고리즘으로 유명한 유클리드 호제법이 있습니다. "두 개의 자연수 a, b에서 a를 b로 나눈 나머지 r이 있을 때, a와 b의 최대공약수는 b와 r의 최대공약수와 같다." 이 원리를 이용하여 a, b가 있을 때 b MOD r를 구하고 이를 r'라고 하면, r MOD r'를 반복하여 나머지가 0이 되었을 때 나누는 수가 a와 b의 최대공약수입니다. (gcd) 그대로 코드로 표현해보면 int gcd(int a, int b) { int r; while(b) { r = a % b; a = b; b = r; } return a; } 단, a > b는 이어야하기 때문에 b > a라면 두 숫자를 바꿔주는 과정이 필요합니다. int gcd(int a, int b) { if(b > a) ..
반응형