3190: 뱀
·
PS/BOJ
시간 제한 메모리 제한 1초 128MB 문제 'Dummy'라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임은 N×N 정사각 보드위에서 진행되고, 몇몇 칸에는 사과가 놓여져 있다. 보드의 상하좌우 끝에 벽이 있다. 게임이 시작할 때 뱀은 맨위 맨좌측에 위치하고 뱀의 길이는 1이다. 뱀은 처음에 오른쪽을 향한다. 뱀은 매 초마다 이동을 하는데 다음과 같은 규칙을 따른다. 먼저 뱀은 몸길이를 늘려 머리를 다음칸에 위치시킨다. 만약 벽이나 자기자신의 몸과 부딪히면 게임이 끝난다. 만약 이동한 칸에 사과가 있다면, 그 칸에 있던 사과가 없어지고 꼬리는 움직이지 않는다. 만약 이동한 칸..
3085: 사탕 게임
·
PS/BOJ
3085번: 사탕 게임 예제 3의 경우 4번 행의 Y와 C를 바꾸면 사탕 네 개를 먹을 수 있다. www.acmicpc.net 풀이 #idea 0 ~ N - 1 까지의 가로, 세로에서 색깔 바꾸기 가능 각 행, 열에 가장 많은 연속된 글자 찾기 색깔 바꾸기는 한 번만 실행하므로 불필요한 반복을 줄이기 위해 전체 행, 열의 원래 연속 데이터를 확인 #구현방안 색깔 바꾸기 k 와 k + 1의 색깔이 같은 경우, 바꿀 수 없음 최대 연속 데이터 찾기 초기 데이터에서 최대 연속 데이터 먼저 확인 행에서 바꾸면 해당 행과 바뀐 데이터의 열의 최대 연속 데이터 확인 열에서 바꾸면 해당 열과 바뀐 데이터의 행의 최대 연속 데이터 확인 using System; class program { static int N, co..
2659: 십자카드 문제
·
PS/BOJ
2659번: 십자카드 문제 입력은 한 줄로 이루어지며, 이 한 줄은 카드의 네 모서리에 씌여있는 1 이상 9 이하의 숫자 4개가 시계 방향으로 입력된다. 각 숫자 사이에는 빈칸이 하나 있다. www.acmicpc.net 에라토스테네스의 체를 생각하며 가장 작은 수부터 리스트에 추가하고 동시에 추가된 수들을 회전시켜 얻은 시계수가 아닌 수들은 걸러내는 방법을 적용했다. 1111을 가장 먼저 리스트에 추가하면 1111을 회전시켜 얻은 1111, 1111, 1111을 확인한다. 모두 같으므로 패스. 1112는 걸러지지 않았으므로 리스트에 추가한다. 1121, 1211, 2111을 제외한다. 이하 반복 입력된 수를 돌려 얻은 시계수가 리스트의 몇번째 항목인지만 확인해 출력하면 끝. using System; us..
전라남도교육지원청
'구현' 태그의 글 목록