전체 글(724)
-
[백준/BOJ] 백준 18808번 : 스티커 붙이기
www.acmicpc.net/problem/18808 18808번: 스티커 붙이기 혜윤이는 최근에 다양한 대회를 참여하면서 노트북에 붙일 수 있는 스티커들을 많이 받았다. 스티커는 아래와 같이 사각 모눈종이 위에 인쇄되어 있으며, 스티커의 각 칸은 상하좌우로 모두 연� www.acmicpc.net 순서대로 붙일 스티커를 확인하는데, 해당 위치에 스티커를 붙일 수 있는지 확인할 때와, 스티커를 붙일 때 스티커의 행렬 형태를 이용하지 않고, 스티커의 행렬 형태를 좌표 형태로 바꿔서 이용했다. 스티커를 회전할 때는 스티커의 행렬 형태를 이용했다. 코드 #include #include #include using namespace std; int n, m, k; int notebook[40][40]; vector..
2020.10.04 -
[백준/BOJ] 백준 2475번 : 검증수
www.acmicpc.net/problem/2475 2475번: 검증수 컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다. 고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들� www.acmicpc.net 입력한 각 수들을 제곱해서 더한 뒤 10으로 나눈 나머지의 값을 출력한다. 코드 #include #include #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false); int input; int sum = 0; //각 수들을 제곱한 값의 합을 저장할 변수 for (int i = 0; i < 5; i+..
2020.10.04 -
[백준/BOJ] 백준 11062번 : 카드 게임
www.acmicpc.net/problem/11062 11062번: 카드 게임 근우와 명우는 재미있는 카드 게임을 하고 있다. N개의 카드가 일렬로 놓여 있다. 각 카드에는 점수가 적혀있다. 근우부터 시작하여 번갈아가면서 턴이 진행되는데 한 턴에는 가장 왼쪽에 있는 � www.acmicpc.net 고를 수 있는 카드의 범위가 left~right이고, 지금 카드를 뽑는 사람이 human(1:근우, 0:명우)일 때 근우, 명우가 최선의 전략으로 게임을 할때 얻게 되는 근우의 점수를 구하는 함수를 만들었다. 근우가 카드를 뽑을때는 뽑은 카드는 점수로 들어가며, 근우의 점수를 크게 만들어야 되고, 명우가 카드를 뽑을때는 뽑은 카드는 점수로 들어가지 않으며, 근우의 점수를 작게 만들어야 된다. 코드 #includ..
2020.09.26 -
[백준/BOJ] 백준 9658번 : 돌 게임 4
www.acmicpc.net/problem/9658 9658번: 돌 게임 4 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 지금 하는 사람이 -1,-3,-4 해서 하나라도 다음 상대가 지는 것이 있으면 지금 하는 사람은 승리한다 코드 #include #include #include using namespace std; int cache[1001]; int Solve(int n) { //4이하의 값은 구해져 있다 if (n n; cache[1] = 0;//지금 하는 사람 패 cache[2] = 1;//지금 하는 사람 승 cache[3] = 0;//지금 하는 사람 패 cache[4] = 1;//지금 하는 사람 승 if (Solve(n) == 1) cout
2020.09.26 -
[백준/BOJ] 백준 9655번 : 돌 게임
www.acmicpc.net/problem/9655 9655번: 돌 게임 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net n이 홀수일때는 먼저 시작하는 상근이가 이기고, n이 짝수일때는 나중에 시작하는 창영이가 이긴다. 코드 #include #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false); int n; cin >> n; if (n % 2 == 1) //n이 홀수일때 먼저 시작하는 상근이가 이긴다 cout
2020.09.26 -
[백준/BOJ] 백준 2748번 : 피보나치 수 2
www.acmicpc.net/problem/2748 2748번: 피보나치 수 2 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n>=2)가 된�� www.acmicpc.net fibo[91]를 사용해 중복된 계산을 하지 않도록 했다. 코드 #include #include #include using namespace std; long long fibo[91]; long long Solve(int n) { long long& ret = fibo[n]; //계산한 적이 있을때 if (ret != -1) return ret; ret = Solve(n..
2020.09.25