1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# '-'를 기준으로 나눠서 입력 받는다.
equation = input().split('-')
minList = []
print(equation)
# '-'로 나뉜 각 index들의 합을 구해서 리스트로 만든다.
for i in equation:
    # '+'이면 합을 구하면 되므로, 숫자만 있는 리스트로 바꾼 후, sum을 구한다.
    beforeSum = list(map(int, i.split('+')))
    print(beforeSum)
    minList.append(sum(beforeSum))
    # print(beforeSum, minList)
print(minList)
res = minList[0]
for i in minList[1:]:
    res = res - i
print(res)
 
cs

 

문제 출처: https://www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다

www.acmicpc.net

 


너무 복잡하게 생각하지 않으면 간단하게 해결할 수 있는 구현(브루트포스) 문제이다.

특히 for문을 잘 이용해서 처리하면 되므로, for문을 통해서 잘 해결할 수 있는 전략을 세우는 것이 중요하다.

코드는 다음과 같이 하면 된다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
num = int(input())
people = []
 
for i in range(num):
    people.append(list(map(int, input().split())))
 
rank = []
for i in range(num):
    rankNum = 1
    for j in range(num):
        if (people[i][0< people[j][0]) and (people[i][1< people[j][1]):
            rankNum += 1
    rank.append(rankNum)
 
for i in rank:
    print(i, end = ' ')
cs

 

 

문제 출처: https://www.acmicpc.net/problem/7568

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

 

+ Recent posts