본문 바로가기

알고리즘 (Python)

(259)
[백준] 그리디 알고리즘 - ATM (11399번) #파이썬 #python ATM (11399번) 시간 제한 : 1초 메모리 제한 : 256 MB 문제 인하은행에는 ATM이 1대밖에 없다. 지금 이 ATM앞에 N명의 사람들이 줄을 서있다. 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 Pi분이다. 사람들이 줄을 서는 순서에 따라서, 돈을 인출하는데 필요한 시간의 합이 달라지게 된다. 예를 들어, 총 5명이 있고, P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 인 경우를 생각해보자. [1, 2, 3, 4, 5] 순서로 줄을 선다면, 1번 사람은 3분만에 돈을 뽑을 수 있다. 2번 사람은 1번 사람이 돈을 뽑을 때 까지 기다려야 하기 때문에, 3+1 = 4분이 걸리게 된다. 3번 사람은 1번, 2번 사람이 돈을 뽑..
[CodeUp] 코드업 기초 100제 1060번 풀이 - 파이썬(python) 1060 : [기초-비트단위논리연산] 비트단위로 AND 하여 출력하기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 입력된 정수 두 개를 비트단위로 and 연산한 후 그 결과를 정수로 출력해보자. 비트단위(bitwise)연산자 &를 사용하면 된다.(and, ampersand, 앰퍼센드라고 읽는다.) 입력 2개의 정수가 공백을 두고 입력된다. -2147483648 ~ +2147483647 출력 두 정수를 비트단위(bitwise)로 and 계산을 수행한 결과를 10진수로 출력한다. 입력 예시 3 5 출력 예시 1 내 풀이 a,b=map(int, input().split()) print(a&b) 모범 답안 a,b=input().split() x=int(a) y=int(b) print(x&y..
[CodeUp] 코드업 기초 100제 1059번 풀이 - 파이썬(python) 1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자. 비트단위(bitwise)연산자 ~ 를 붙이면 된다.(~ : tilde, 틸드라고 읽는다.) 입력 정수 1개가 입력된다. -2147483648 ~ +2147483647 출력 비트 단위로 1 -> 0, 0 -> 1로 바꾼 후 그 값을 10진수로 출력한다. 입력 예시 2 출력 예시 -3 내 풀이 a=int(input()) print(~a) 모범 답안 a=input() n=int(a) print(~n) 해설 비트단위로 참과 거짓을 바꿔야 하므로 비트단위 not 연산자인 '~'를 사용하였습니다.
[CodeUp] 코드업 기초 100제 1058번 풀이 - 파이썬(python) 1058 : [기초-논리연산] 둘 다 거짓일 경우만 참 출력하기 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 개의 참(1) 또는 거짓(0)이 입력될 때, 모두 거짓일 때에만 참이 계산되는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 둘 다 거짓일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. 입력 예시 0 1 출력 예시 0 내 풀이 a,b=map(int,input().split()) if a==b and a==0: print(1) else: print(0) 모범 답안 a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int((not b1) and (not b2)..
[CodeUp] 코드업 기초 100제 1057번 풀이 - 파이썬(python) 1057 : [기초-논리연산] 참/거짓이 서로 같을 때에만 참 출력하기 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 개의 참(1) 또는 거짓(0)이 입력될 때, 참/거짓이 서로 같을 때에만 참이 계산되는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 참/거짓이 서로 같을 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. 입력 예시 0 0 출력 예시 1 내 풀이 a,b=map(int,input().split()) if a==b: print(1) else: print(0) 모범 답안 a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int(b1 == b2) print(z)..
[CodeUp] 코드업 기초 100제 1056번 풀이 - 파이썬(python) 1056 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 가지의 참(1) 또는 거짓(0)이 입력될 때, 참/거짓이 서로 다를 때에만 참을 출력하는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 참/거짓이 서로 다를 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. 입력 예시 1 1 출력 예시 0 내 풀이 a,b=map(int,input().split()) if a ^ b==1: print(1) else: print(0) 모범 답안 a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int((b1==True..
[CodeUp] 코드업 기초 100제 1055번 풀이 - 파이썬(python) 1055 : [기초-논리연산] 하나라도 참이면 참 출력하기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 개의 참(1) 또는 거짓(0)이 입력될 때, 하나라도 참이면 참을 출력하는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 하나라도 참일 경우 1을 출력하고, 그 외의 경우에는 0을 출력한다. 입력 예시 1 1 출력 예시 1 내 풀이 a,b=map(int,input().split()) if a or b==1: print(1) else: print(0) 모범 답안 a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int(b1 or b2) print(z) 해설 두 개의 입..
[CodeUp] 코드업 기초 100제 1054번 풀이 - 파이썬(python) 1054 : [기초-논리연산] 둘 다 참일 경우만 참 출력하기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 개의 참(1) 또는 거짓(0)이 입력될 때, 모두 참일 때에만 참을 출력하는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 둘 다 참(1)일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. 입력 예시 1 1 출력 예시 1 내 풀이 a,b=map(int,input().split()) if a&b==1: print(1) else: print(0) 모범 답안 a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int(b1 and b2) print(z) 해설 모..
[CodeUp] 코드업 기초 100제 1053번 풀이 - 파이썬(python) 1053 : [기초-논리연산] 참 거짓 바꾸기(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 1(true, 참) 또는 0(false, 거짓) 이 입력되었을 때 반대로 출력하는 프로그램을 작성해보자. 입력 정수 1개가 입력된다.(단, 0 또는 1 만 입력된다.) 출력 입력된 값이 0이면 1, 1이면 0을 출력한다. 입력 예시 1 출력 예시 0 내 풀이 a=int(input()) if a==1: print(0) else: print(1) 모범 답안 a=input() x=int(a) b=bool(x) x=int(not b) print(x) 해설 1이면 0을, 0이면 1을 출력하는 문제이므로 if 조건문을 사용하였습니다.
[CodeUp] 코드업 기초 100제 1052번 풀이 - 파이썬(python) 1052 : [기초-비교연산] 두 정수 입력받아 비교하기4(설명) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 설명 두 정수(a, b)를 입력받아 a와 b가 서로 다르면 1을, 그렇지 않으면 0을 출력하는 프로그램을 작성해보자. 입력 두 정수 a, b가 공백을 두고 입력된다. -2147483647