60일차 문제

양진혁·2022년 1월 1일
0

문제풀이

2차원 평면 위의 점 N개가 주어진다. 좌표를 x좌표가 증가하는 순으로, x좌표가 같으면 y좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오.

예제 입력 1
5
3 4
1 1
1 -1
2 2
3 3

예제 출력 1
1 -1
1 1
2 2
3 3
3 4

a = int(input())
el = []
for i in range(a):
  el.append(list(map(int,input().split())))
el.sort(key=lambda x : (x[0], x[1]))
for i in el:
  print(i[0],i[1])

빈 리스트에 입력값을 넣어준 후 람다식을 이용해서 오름차순으로 정렬했고 그것을 출력했다.

두번째

숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 가지고 있는지 아닌지를 구하는 프로그램을 작성하시오.

예제 입력 1
5
6 3 2 10 -10
8
10 9 -5 2 3 4 5 -10

예제 출력 1
1 0 0 1 1 0 0 1

a = int(input())
se = set(map(int,input().split()))
b = int(input())
el = list(map(int,input().split()))
for i in range(b):
  if el[i] in se:
    print(1,end=' ')
  else:
    print(0,end=' ')

첫번째 입력값을 받은 후 숫자들을 set을 이용해 집합을 만들어 주고 두번째 입력값을 받은 후 리스트화 시킨다. 그 다음 if문을 사용해서 만약 상근이가 가진 숫자가 포함된 숫자면 1 아니면 0을 출력한다.

0개의 댓글