일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 리액트 네이티브 설치 오류
- Expo
- node
- c++ using
- javascript
- react native typescript
- react-native
- react native accessible
- 스탠실 버퍼 튜토리얼
- GitHub
- 싸이월드
- react native
- 리액트 네이티브 맥
- react native ios 기기 연결
- node.js
- html
- react
- cyworld
- stencil buffer
- react native typescript navigate
- 스탠실 버퍼 시작
- react native mac
- react native typescript navigation
- c++ 정보은닉
- 스탠실 버퍼 사용
- 벡터와 리스트의 차이
- C++
- react native 타입스크립트
- CSS
- unity stencil buffer
Archives
- Today
- Total
혀니의 이거저거 뿌시기
7568 덩치 본문
728x90
7568번: 덩치
우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩
www.acmicpc.net
N = int(input())
list = []
result = [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]
for _ in range(N):
x,y = map(int, input().split())
list.append([x, y])
for i in range(N):
for j in range(i + 1,N):
if list[i][0] > list[j][0] and list[i][1] > list[j][1]:
result[j] += 1
if list[i][0] < list[j][0] and list[i][1] < list[j][1]:
result[i] += 1
for i in range(N):
print(result[i])
이번 문제는 좀 바보같이 푼 경향이 없지 않다.. 풀게 된 데에는 시간이 얼마 걸리지 않았지만.. 배열을 만들고 채우는 방법이 np.full(50,1)로 해야하는데 import numpy as np가 되지 않기 때문에.. 그냥 썼다.
그리고 각각을 부르트포스 형태로 돌면서 이전 값과 현재 값을 비교하면서 그 자리의 result값을 추가하는 방식으로 구했다..
이를 보완하는 코드는
n = int(input())
temp = []
for i in range(n):
h, w = map(int, input().split())
temp.append((h, w))
for i in temp:
result = 1
for j in temp:
if i[0] < j[0] and i[1] < j[1]:
result += 1
print(result)
이런 방식이 있다.
이 코드에서 주목할 점은 우선 순서대로 배열을 비교할때 처음값부터 쭈우욱 계산하면 처음 값은 바뀌지 않는다는 점을 이용해서 result를 배열로 지정하지 않고 정수로 그때그때 구하고 바로 출력하는 식으로 했다는 것이다.
또한, list[index]대신에 i자체가 이 역할을 대신하고, 그 i에 i[0]식으로 붙이면 temp의 이중배열을 그대로 사용할 수 있다.
728x90
'알고리즘 공부(C++)' 카테고리의 다른 글
1966 프린터 큐 (0) | 2022.08.10 |
---|---|
11047 코인 (0) | 2022.08.09 |
10773 제로 (0) | 2022.08.09 |
11399 ATM (0) | 2022.08.06 |
BOJ 1931 회의실 (0) | 2022.08.05 |