백준 2638 치즈
·
알고리즘/BOJ
2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5≤N, M≤100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 표시된다. 또한, 각 0과 1은 하나의 공백으로 분리되어 있다. www.acmicpc.net 문제 요약 N×M (5≤N, M≤100)의 모눈종이 위에 치즈는 4변 중에서 적어도 2변 이상이 공기에 노출되면 한시간만에 녹아 없어져 버린다. 아래 그림의 c로 표시된 모든 치즈 격자는 한 시간 후에 사라지는 것이다. 아래 그림을 보면 치즈 내부 공간은 외부 공기와 접촉 하지 않는 것으로 가정한다. 모눈종이의 맨 가장자리에는 치즈가 놓이지 않는 것으로 가정한다. 입력으로 주어진 치즈가 모두 ..
백준 1012 유기농 배추
·
알고리즘/BOJ
1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며 해충을 잡아 먹음으로써 배추를 보호한다. 특히, 어떤 배추에 배추흰지렁이가 한 마리라도 살고 있으면 이 지렁이는 인접한 다른 배추로 이동할 수 있어, 그 배추들 역시 해충으로부터 보호받을 수 있다. ( www.acmicpc.net 문제 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추..
백준 1720 타일 코드
·
알고리즘/BOJ
1720번: 타일 코드 문제 2×N 크기의 넓은 판을 1×2 (또는 2×1) 크기와 2×2 크기의 타일로 채우려고 한다. 여러 가지 경우가 있을 수 있으므로, 각각을 하나의 코드로 대응시켜서 암호화에 이용하려고 한다. 그런데 문제가 생겼다. 넓은 판을 교환하다 보니 좌우 대칭인 경우가 있어, 뒤집히는 경우 코드가 헷갈리게 되는 경우가 발생한 것이다. 예를 들어 아래의 두 경우는 달라 보이지만 좌우 대칭을 이루고 있다. N이 주어지면, 전체 타일 코드의 개수를 구하는 프로그램을 www.acmicpc.net 문제 2×N 크기의 넓은 판을 1×2 (또는 2×1) 크기와 2×2 크기의 타일로 채우려고 한다. 여러 가지 경우가 있을 수 있으므로, 각각을 하나의 코드로 대응시켜서 암호화에 이용하려고 한다. 그런데 ..
백준 1541 잃어버린 괄호
·
알고리즘/BOJ
1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 많이 연속되는 숫자는 없다. 수는 0으로 시작할 수 있다. www.acmicpc.net 세준이가 +,-로 식을 만들었는데 괄호를 적절히 쳐서 식의 값을 최소로 만드는 문제이다. 식의 값을 최소로 만드려면 - 사이 마다 괄호를 쳐주면 된다. 예를 들어 55 - 50 + 40 => 55 - ( 50 + 40 ) 100 - 30 - 60 + 90 = > 100 - ( 30 ) - ( 60 + 90 ) 이런식으로 푸는 방법은 떠올랐으나 문자열을 잘 못 다뤄서 ㅠ 이 문제를 풀기 위해 stri..
백준 2960 에라토스테네스의 체
·
알고리즘/BOJ
2960 에라토스테네스의 체 2960번: 에라토스테네스의 체 문제 에라토스테네스의 체는 N보다 작거나 같은 모든 소수를 찾는 유명한 알고리즘이다. 이 알고리즘은 다음과 같다. 2부터 N까지 모든 정수를 적는다. 아직 지우지 않은 수 중 가장 작은 수를 찾는다. 이것을 P라고 하고, 이 수는 소수이다. P를 지우고, 아직 지우지 않은 P의 배수를 크기 순서대로 지운다. 아직 모든 수를 지우지 않았다면, 다시 2번 단계로 간다. N, K가 주어졌을 때, K번째 지우는 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 www.acmicpc.net 소수 찾기 알고리즘 n보다 작거나 같은 모든 소수를 찾기위해서 크기가 n+1인 배열을 선언한다 그리고 인덱스가 2의 배수면 1로 바꿔주고,n-1의 배수 까지 1로 ..
백준 2138 전구와 스위치
·
알고리즘/BOJ
백준 2138 전구와 스위치 2138번: 전구와 스위치 N개의 스위치와 N개의 전구가 있다. 각각의 전구는 켜져 있는(1) 상태와 꺼져 있는 (0) 상태 중 하나의 상태를 가진다. i(1
백준 1212 8진수 2진수
·
알고리즘/BOJ
백준 1212 8진수 2진수 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 8진수를 2진수로 바꾸는 문제 재귀로 풀었다. 여기서 숫자인 문자를 int로 바꿀때 그냥 '0'을 빼주면 된다. 푼지 꽤 되서 기억이 잘 안난다. 암튼 잘한건 아니고,,, 아무튼 풀었음 그리고 2진수->8진수는 3자리씩 끊어서 바꾸면 됨 예전에는 2진수 8진수 16진수 이런거 이해하는게 너무 귀찮고 싫었는데 3학년때 마이크로프로세서 배우면서 익숙해졌다. 12345678910111213141516171819202122232425262728293031323334353637383940#include ​using namespace std;​void..
백준 14720 우유 축제
·
알고리즘/BOJ
백준 14720 우유 축제 14720번: 우유 축제 영학이는 딸기우유, 초코우유, 바나나우유를 좋아한다. 입맛이 매우 까다로운 영학이는 자신만의 우유를 마시는 규칙이 있다. 맨 처음에는 딸기우유를 한 팩 마신다. 딸기우유를 한 팩 마신 후에는 초코우유를 한 팩 마신다. 초코우유를 한 팩 마신 후에는 바나나우유를 한 팩 마신다. 바나나우유를 한 팩 마신 후에는 딸기우유를 한 팩 마신다. 영학이는 우유 축제가 열리고 있는 우유거리에 왔다. 우유 거리에는 우유 가게들이 일렬로 늘어서 있다. 영학이는 우유 거리 www.acmicpc.net dp문제이다. 저번에 이 문제 심화버전 우유 도시 풀다가 도저히 못풀겠어서 놔뒀는데 이 문제 풀고나니까 어떻게 풀어야 되는지 감이 잡힌다. 이 문제의 포인트는 1.무조건 딸기..
백준 9465 스티커
·
알고리즘/BOJ
백준 9465 스티커 9465번: 스티커 문제 상근이의 여동생 상냥이는 문방구에서 스티커 2n개를 구매했다. 스티커는 그림 (a)와 같이 2행 n열로 배치되어 있다. 상냥이는 스티커를 이용해 책상을 꾸미려고 한다. 상냥이가 구매한 스티커의 품질은 매우 좋지 않다. 스티커 한 장을 떼면, 그 스티커와 변을 공유하는 스티커는 모두 찢어져서 사용할 수 없게 된다. 즉, 뗀 스티커의 왼쪽, 오른쪽, 위, 아래에 있는 스티커는 사용할 수 없게 된다. 모든 스티커를 붙일 수 없게된 상냥이는 각 스티커에 점 www.acmicpc.net ​ dp문제 2차원 dp로 풀었다. 한번뗀 스티커의 오른쪽 왼쪽 아래쪽은 사용할 수 없다. dp[n][0] => n번째 행의 스티커를 안뗀 경우 dp[n][1] => n번째 행의 스티..
블로그 시작
·
기타
20191202 블로그 시작
togeepizza
Beyond the Now