분류 전체보기(724)
-
[백준/BOJ] 백준 2480번 : 주사위 세개
https://www.acmicpc.net/problem/2480 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)*1,000원의 상금을 받게 된다. 같은 눈이 2개만 www.acmicpc.net 주사위의 눈을 오름차순으로 정렬하였고 주사위의 눈이 모두 같은 경우, 주사위의 눈이 두 개만 같은 경우, 주사위의 눈이 모두 다른 경우에 따른 결과를 출력하였다. 코드 #include #include #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false); vector num..
2020.08.02 -
[백준/BOJ] 백준 1912번 : 연속합
https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net point지점에서 시작하는 연속된 수들의 최댓값을 구하는 함수를 만들고, point지점이 0~n-1일 때를 모두 확인해 그중 가장 큰 값을 구한다. cache를 만들어서 한번 계산한 값은 다시 계산하지 않도록 하여 시간을 단축했는데, 주의해야 할 점은 cache를 습관처럼 -1로 초기화하면 안 된다는 점이다. 왜냐하면 solve()의 계산 결과로 -1이 나올 수 있기 때문이다. 이 코드에서는 cache를 s..
2020.08.02 -
[백준/BOJ] 백준 2156번 : 포도주 시식
https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 직전에 연속으로 cnt잔 마셨을 때, index포도주부터 마실수 있는 포도주의 최대 양을 구한다. 직전에 연속으로 2잔을 마신 경우 index포도주는 건너뛰어야 하고, 직전에 연속으로 2잔을 마시지 않았다면 index번 포도주를 마시는 경우와 마시지 않는 경우중 더 큰 양을 선택한다 코드 #include #include #include using namespace std; int n; vector ..
2020.08.01 -
[백준/BOJ] 백준 1932번 : 정수 삼각형
https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 문제 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 위 그림은 크기가 5인 정수 삼각형의 한 모습이다. 맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최� www.acmicpc.net (x, y) 위치부터 내려가는 경로 중 경로에 있는 수들의 합의 최대를 구하는 함수를 만든다. 경로를 찾을 때, 왼쪽 아래(x+1, y)로 내려가는 경우와 오른쪽 아래(x+1, y+1)로 내려가는 경로중 경로에 있는 수들의 합이 더 큰쪽을 선택한다 코드 #include #include #include using namespace std; int n; int cac..
2020.08.01 -
[백준/BOJ] 백준 2193번 : 이친수
https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net index(0~n-1) 번이 number(0 또는 1)일 때 이친수의 개수를 구하는 함수를 만든다. 이 함수의 number가 0이면 그다음 숫자가 0일 때와 1일 때를 고려하지만, number가 1이면 그다음 숫자가 0일 때만 고려한다(이친수에서 1이 두 번 연속 나오지 않는다는 성질 이용), 그리고 0번 index의 number는 무조건 1이어야 한다(이친수는 0으로 시작할 수 없다는..
2020.08.01 -
[백준/BOJ] 백준 1003번 : 피보나치 함수
https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net n의 0과 1의 호출 횟수를 pair형태로 반환하는 함수를 만들었다. n-1과 n-2의 0의 호출횟수합과, n-1과 n-2의 1의 호출횟수합을 통해 n의 0과 1의 호출 횟수를 구한다. cache[41]를 통해 이미 계산한 적이 있는 값은 한 번 더 계산하지 않도록해서 계산 시간을 단축시켰다. 코드 #include #include using namespace std; pair cache[41]; //n의 0과 1의 호출횟수를 pair형태(0의 호출횟수, 1의 호출횟수)로 반환 pair solv..
2020.08.01