728x90

백준 3

[python] 백준 2581 : 소수

2581번 문제는 다음과 같다. 문제 이해는 다음과 같다. 입력 숫자 두개 사이의 숫자에서 소수를 찾아, 소수의 합과 최솟값을 찾을 것이다. 여기서 소수란? 저번 글에서 설명했던 것과 같이 약수가 자기 자신과 1뿐인 수이다. 즉, 나누어떨어지는 수가 1과 자기 자신 뿐으로 2개이다. 입력으로 시작하는 숫자와, 마지막 숫자를 M, N순서대로 입력받기에 int(input()) 를 각각해준다. 나는 소수를 집어넣을 공간을 리스트로 만들어주었다. lst = [] 입력받은 숫자 M부터 N까지 하나씩 증가하면서, 약수의 갯수를 찾아야하므로 약수 갯수는 0으로 초기화한다. for i in ragnge(M, N+1): k = 0 # 약수 계산해주는 수이다. 이제 돌아가면서 약수의 갯수를 셀 것인데, M이 만약 1이 되..

백준 2021.08.01

[python] 백준 1978 : 소수 찾기

백준 1978번입니다. 문제는 다음과 같습니다. 첫 줄에 숫자 N을 입력받아 N개의 숫자를 입력 후, 숫자가 소수인지 아닌지 판별하여 소수의 갯수를 출력하는 프로그램을 작성하면 됩니다. 먼저 소수에 대해서 알아야합니다. 소수란? 약수가 자기 자신과 1뿐인 수 입니다. 그럼 1과 자기 자신말고 어떠한 수로도 나뉘어떨어지면 안됩니다. 먼저 N을 입력 받아야하기 때문에, N = int(input()) 을 작성해 주었습니다. N개의 갯수만큼, 숫자를 입력 받아야합니다. 저는 리스트로 숫자를 입력 받았습니다. a = list(map(int, input().split())) 이렇게 작성하면, 리스트 a안에 순서대로 숫자가 들어가겠죠? 하지만 N과 리스트 길이가 같아야하므로 조건으로 길이가 N과 같다는 조건식을 추가..

백준 2021.07.28

[python] 백준 1011 : Fly me to the Alpha Centauri

문제는 다음과 같다. 문제 이해하는데 애 좀 썼다. 중요한 것은 바로 k k는 0부터 시작하여 k-1, k, k+1 0에서 시작하면 -1, 0, 1 만큼 움직일 수 있다. 처음 시작할때 왼쪽으로 갈 필요는 없으므로 무조건 1로 움직인다. (그림에서 x가 왼쪽, y가 오른쪽. 우리는 x에서 y로 간다.) k는 1로 변하여 0, 1, 2 만큼 갈 수 있다. 최소한으로 움직일 것이기 때문에 2만큼 가서, k=3으로 변하고, 2,3,4으로 움직일 수 있다. 하지만, 여기서 y지점 바로 전에는 1광년만 움직일수 있다. 입력 예시를 보자. 첫번째 X = 0 , Y = 3이며 현재 이동한 횟수 (cnt) 0 처음에 k=0 이므로 -1, 0 , 1 하지만 앞서 설명했다시피 왼쪽으로 갈 필요는 없다. 1로 이동 k = ..

백준 2021.07.27
728x90