1) 생각 오셀로 게임을 시작한다. 초기 조건은 N x N에 상관없이 다음과 같은 중앙 4개의 형태로 동일하다.이제 오셀로를 두는 좌표를 준다. 이 좌표를 항상 둘 수있는 경우를 준다. 주어진 좌표들을 모두 두었을 때 흑과 백의 개수를 출력해라. 첫 번째 생각돌을 하나 두었을 때, (위 아래) (좌 우) (대각 4방향)을 판단해 주어야한다. 두 번째 생각예제의 답이 틀리게 나와 확인해보니 당연히 (x,y)로 주어질 줄 알았지만 (y,x) 로 주어지고 있었다.2) 방안 1) 모든 경우의 수를 다 탐색 해주었다.2) y와 x를 바꿔주었고, 배열의 크기를 N개로 생성하여서 x,y 각각 -1을 해주었다.3) 오셀로를 놓았을 때, 뒤집는 과정에서 빈 공간 체크를 하지 않아서 예제는 답이 잘 나왔지만 제출시에는 틀..
1) 생각 단어가 주어지고 '-'이 들어갈 Index가 주어졌을 때, 해당 Index에 '-'을 넣은 결과를 출력하라. 첫 번째 생각기존에 있던 문자열에 '-'을 넣게되면 기존 단어들의 Index가 변한다. 두 번째 생각'-'을 넣어줄 때마다 String을 생성하면 성능이 좋지 않을 것이다. 2) 방안 1) '-'의 위치 배열을 정렬하여 맨 뒤 Index 부터 '-'을 넣어주면 단어의 Index에 신경쓰지 않고 '-'을 넣어줄 수 있다.2) 주어진 문자열을 List로 만들어 '-'의 삽입을 용이하게 하였다. 123456789101112131415161718192021222324252627282930313233343536import java.io.IOException;import java.util.Arra..
1) 생각 문자가 주어지면 그 문자를 가지고 모양을 만들어라. Ex) APPLE 일 경우 첫 번째 생각문자를 가지고 만드는 패턴이 정형화되어있고, 세로의 길이는 무조건 5줄이다. 두 번째 생각(1,5) 줄과 (2,4) 줄이 쌍이므로 두 줄중 한 줄을 만든뒤 복사해주면 된다. 2) 방안 한 줄 한 줄 패턴에 맞춰서 만들어 준다. 중앙 줄을 미리 만들어주면 나머지는 중앙 줄과 비교해서 만들어 줄 수 있다.(2,4) 줄은 중앙 줄에서 '.'이 나오는 구간은 '#'이고 나머지는 '.'으로 표현된다.(1,5) 줄은 중앙 줄에서 문자가 나오는 구간은 '#'이고 나머지는 '.'으로 표현된다. 1234567891011121314151617181920212223242526272829303132333435363738394..
- Total
- Today
- Yesterday