구현 3

[구현] 왕실의 나이트

[문제] - 8X8 나이트 판이 존재한다. - 행은 12345678, 열은 abcdefgh 로 표현한다. - 나이트는 수평2-수직1 or 수직2-수평1 로만 이동이 가능하다. - 나이트의 좌표가 주어졌을때 (ex a,1) 나이트가 이동할 수 잇는 경우의수를 구하는 프로그램을 구현한다. - 나이트는 정원의 밖으로 나갈 수 없다. [코드] # 나이트가 움직일 수 있는 경우의수 8가지를 구해본다. steps = [ (-2,-1), (-1,-2), (1,-2), (2,-1),(2,1), (1,2), (-1,2), (-2,1) ] row,col=1,1 result = 0 for i in steps: next_row = row+i[0] next_col = col+i[1] # 맵 안에 들어있는경우 result 를 1..

[구현] 시각

[문제] - N이 입력되면, 00시00분00초부터 N시00분00초까지 모든 시각중에서 3이 하나라도 포함되는 모든 경우의수를 구하는 프로그램을 구성한다. - N 으로 5 가 입력되면, 00시00분00초부터 05시00분00초까지 3이 하나라도 포함되는 모든 경우의수를 구하는 프로그램이다. [코드] n=5 result = 0 for i in range(n+1): for j in range(60): for k in range(60): if '3' in str(i)+str(j)+str(k): result += 1 print(result) [아이디어] - XX시 YY분 ZZ초 를 문자열로 봐버린다. - 결국 000000, 000001 ..... 000058, 000059, 000100, 000101, ..... ..

[구현] 상하좌우

[문제] - N을 입력받는다. N은 N x N 의 맵을 만든다. - L, R, U, D 를 입력받는다. LEFT / RIGHT / UP / DOWN 을 의미한다. - 입력받은 LRUD 만큼 (1, 1) 위치에서 이동했을때 어느 좌표에 위치하는지 구현하는 프로그램을 작성한다. - N x N 을 벗어나는 LRUD 는 무시된다. [코드] N=5 x,y,nx,ny = 1,1,0,0 plan = ['R', 'R', 'R', 'U', 'D', 'D'] # 이동을 위한 LRUD 정의 # L 은 (2,2) > (2,1), dx+0 dy-1 # R 은 (2,2) > (2,3), dx+0 dy+1 # U 는 (2,2) > (1,2), dx-1 dy+0 # D 는 (2,2) > (3,2), dx+1 dy+0 move = [..