목록Algorithm (39)
Just Fighting

https://www.acmicpc.net/problem/1357 1357번: 뒤집힌 덧셈 어떤 수 X가 주어졌을 때, X의 모든 자리수가 역순이 된 수를 얻을 수 있다. Rev(X)를 X의 모든 자리수를 역순으로 만드는 함수라고 하자. 예를 들어, X=123일 때, Rev(X) = 321이다. 그리고, X=100일 때, Rev( www.acmicpc.net 어떤 수의 역순을 만드는 함수를 Rev(x)라고 할 때, 주어진 두개의 숫자 X, Y를 이용해 Rev(Rev(X)+Rev(Y))를 리턴해라. Rev() 함수를 만들어서 풀면 된다고 생각했고, 문자열을 뒤집는 방법을 이용해 풀면 쉽게 풀릴 것이라고 생각했다. 숫자를 문자열로 바..

https://www.acmicpc.net/problem/1173 1173번: 운동 첫째 줄에 다섯 정수 N, m, M, T, R이 주어진다. www.acmicpc.net 운동을 N분 하는데 필요한 시간의 최솟값을 출력해라. N, m, M, T, R이 주어진다. N : 운동 시간 m : 초기 맥박이자 최소 맥박. 맥박은 m보다 작아질 수 없다. M : 최대 맥박. 맥박은 M을 넘으면 안된다. T : 운동 시 추가되는 맥박크기 R : 휴식 시 감소되는 맥박 크기 현재맥박+T가 M보다 작거나 같을 때만 운동을 할 수 있다. 휴식해서 현재맥박-R이 m보다 작아진다면 m이 된다. 운동을 할 수 없으면 -1을 리턴. 처음에는 단순하게 운동시간에 맞게 증가하는 맥박을 전부 구해서..

https://www.acmicpc.net/problem/1212 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 8진수를 2진수로 바꿔라. 이때, 주어진 수가 0이 아닐 경우에는 출력값의 앞이 무조건 1이여야 한다. x = int(input()) binary = ['000','001','010','011','100','101','110','111'] ans = '' if x == 0 : print(0) else: for i in str(x): ans += binary[int(i)] print(ans.lstrip('0')) while문 신나게 돌리다가 시간 초과가 나서 생각한 다른 ..
https://www.acmicpc.net/problem/1009 1009번: 분산처리 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a 컴퓨터가 10대가 있다. 데이터의 개수는 항상 a^b개가 주어진다. 그리고 컴퓨터 하나와 데이터 하나 순서대로 짝지어진다. 이때, 마지막 데이터는 몇번째 컴퓨터에서 처리되는가? 단순하게 a^b를 구하고 10으로 나눈 나머지의 값을 출력하면 된다고 생각함. m = int(input()) for i in range(m): a, b = (map(int, inp..