본문 바로가기

Code Up

(20)
[Code Up] - Python 기초 100제, 6098번 풀이 - 티스토리 더보기 문제 설명 주어진 규칙에 따라 개미가 움직인 방향에 해당되는 미로 상자를 출력하자 풀이 box = [] for i in range(10): box.append([]) for j in range(10): box[i].append(0) for i in range(10): box[i] = list(map(int, input().split())) x = 0 y = 0 while (True): if (box[1+y][1+x] != 1): box[1+y][1+x] = 9 x += 1 else: x -= 1 y += 1 if(box[1+y][1+x] == 1): break if (box[1+y][1+x] == 2): box[1+y][1+x] = 9 break for i in range(10): for j in..
[Code Up] - Python 기초 100제, 6097번 풀이 - 티스토리 더보기 문제 설명 입력에 해당 되는 값들로 격자판 위에 막대를 놓아 새로운 격자판을 만들자 풀이 location = [] height, width = map(int, input().split()) n = int(input()) for i in range(height): location.append([]) for j in range(width): location[i].append(0) length = 0 direction = 0 x = 0 y = 0 for i in range(n): length, direction, x, y = map(int, input().split()) if (direction == 1): for j in range(length): if(x+j
[Code Up] - Python 기초 100제, 6096번 풀이 - 티스토리 더보기 문제 설명 19*19 크기의 바둑판이 있을 때, 바둑판의 상황이 주어진다. 흰 돌(1), 검은 돌(0)로 채워져 있을 때 십자 뒤집기 횟수가 입력되고 횟수만큼 십자 뒤집기 할 좌표가 입력된다. * 십자 뒤집기는 해당 좌표의 가로줄을 0 -> 1, 1 -> 0으로 바꾼 후 세로줄도 똑같은 조건으로 바꿔준다. 그러나 해당 좌표는 원래의 상태를 유지시킨다 풀이 d = list() for i in range(19): d.append([]) for j in range(19): d[i].append(0) for i in range(19): d[i] = list(map(int, input().split())) n = int(input()) for i in range(n): x, y = map(int, inpu..
[Code Up] - Python 기초 100제, 6095번 풀이 - 티스토리 더보기 문제 설명 19 * 19 크기의 바둑판에 흰 돌을 올려 놓을 때 흰 돌을 올려 놓은 곳은 1로 아닌 곳은 0으로 출력하자 풀이 d = list() for i in range(20): d.append([]) for j in range(20): d[i].append(0) n = int(input()) for i in range(n): x, y = map(int, input().split()) d[x][y] = 1 for i in range(1, 20): for j in range(1, 20): print(d[i][j], end=' ') print() 해설 바둑판 2차원 배열 d를 0으로 초기화 한다 흰돌의 개수 n을 입력받고 n번 반복하며 x, y (흰돌의 좌표)를 입력 받으며 해당 되는 좌표에 1을..
[Code Up] - Python 기초 100제, 6094번 풀이 - 티스토리 더보기 문제 설명 무작위로 n번 출석을 부를 때 부른 번호 중 가장 빠른 번호를 출력하자 풀이 num = int(input()) numList = input().split() for i in range(num): numList[i] = int(numList[i]) min = 10000 for i in range(num): if(numList[i] < min): min = numList[i] print(min) 해설 min변수에 큰 수를 저장한 후 호명된 번호를 저장해둔 numList와 하나씩 비교하며 작은 수를 min에 저장 후 다음 리스트와 비교한다 다른 분 풀이 num = int(input()) numlist = map(int, input().split()) a = min(numlist) print(..
[Code Up] - Python 기초 100제, 6093번 풀이 - 티스토리 더보기 문제 설명 출석 번호를 n번 무작위로 부를 때 부른 출석 번호를 거꾸로 출력하자 풀이 num = int(input()) numList = input().split() i = 0 while (num > i): print(numList[num-1], end=' ') num -= 1 해설 부른 출석을 저장 후 반복문으로 num번 반복하며 numList의 num-1번부터 -1씩 감소하며 출력한다 다른 분 풀이 num = int(input()) numlist = input().split() numlist.reverse() for i in range(0,num): print(numlist[i], end=' ') reverse함수를 이용했다
[Code Up] - Python 기초 100제, 6092번 풀이 - 티스토리 더보기 문제 설명 1 ~ 23번까지 출석번호가 존재하고, n번 출석을 무작위로 부를 때 각 번호별로 호명된 횟수를 출력하자 풀이 n = int(input()) a = input().split() for i in range(n): a[i] = int(a[i]) arr = [0] * 24 for i in range(1, 24): for j in range(0, n): if (i == a[j]): arr[i] += 1 for i in range(1, 24): print(arr[i], end=' ') 해설 입력받은 번호들을 a 배열에 정수형으로 저장 후 arr 배열을 0으로 0 ~ 23까지 초기화 해준다 이중 반복문을 통해 1 ~ 23까지 숫자를 a배열과 전부 하나씩 비교하며 a배열과 같은 숫자가 있을 때 해당..
[Code Up] - Python 기초 100제, 6091번 풀이 - 티스토리 더보기 문제 설명 입력 받은 3가지의 수의 최소공배수를 구하여 출력하자 풀이 a, b, c = map(int, input().split()) day = 1 while (True): if (day % a == 0 and day % b == 0 and day % c == 0): print(day) break day += 1 해설 a, b, c에 각각 입력을 받는다 무한루프 내에서 day를 1씩 증가 시키며 a, b, c 모두 day와 나누어 나머지가 0이 되는 시점 (셋다 day의 약수인 시점)에 day를 출력 후 무한루프를 탈출한다 다른 분 풀이 a, b, c = input().split() a = int(a) b = int(b) c = int(c) d = 1 while d%a!=0 or d%b!=0 or..