Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Tags
more
Archives
Today
Total
관리 메뉴

열심히 살고 싶어

230920 내일배움 사전캠프 18일차 본문

내일배움캠프 TIL

230920 내일배움 사전캠프 18일차

낭 콩 2023. 9. 20. 22:29

코딩테스트 연습 - ⑴ 몫 구하기

 

아는 언어가 없어서 파이썬으로 풀어봄

 

맞는 지 모르겠지만 코드 실행 누르니 테스트 2개 중 2개 성공이라고 나왔음. 성공한건가 ..?

 

제한 사항에 있는 숫자 범위를 적용하기 위해서 매개변수를 input으로 받아주고 if 문으로 숫자 범위를 적용시킴

근데 대문짝만하게 틀렸나고 나옴 ㅋㅋㅋㅋㅋㅋ

그래서 다시 처음 답안대로 적었더니 정답이라고 나온다 ..

본격 내가 멍청해지는 시간 코딩테스트

이거 하다 보니 강의가 너무 듣고 싶음

 

 

코딩테스트 연습 - ⑵ 최빈값 구하기

 

이번 문제는 배열에서 최빈값을 구하는 것.

최빈값 구하는 코드는 모르기 때문에 바로 검색해봄.

 

우선 파이썬을 이용하여 최빈값을 구하려면, collections 모듈의 Counter 클래스를 알고 있어야 함.

첫 줄에 from collections import Counter 넣어주고, 

answer에 Count(arrary) 를 넣어주고 임의의 배열을 적용하여 print 해주면,

이런 결과 값이 나옴. (숫자별로 배열에 얼마나 등장했는지 카운트 완료)

 

일단 몇번씩 등장했는지 숫자는 세줬으니, 그 중에 제일 많이 등장한 숫자를 가려내면 됨.

answer에 배정해 줬던 counter(array)를 임의의 공간에 넣어두고, 그 중에 제일 많이 등장한 숫자를 뽑아낼 것임.

 

변수.most_common() 이라는 함수를 이용하여 제일 많이 등장한 순으로 정렬이 가능. 괄호 안에 숫자를 넣어주면 그 숫자만큼 잘라서 보여줌.

 

(3을 입력한다면, 3번째로 많이 등장한 숫자까지 보여주고, 1을 입력한다면 제일 많이 등장한 숫자만 보여주게 됨)

괄호 안에 1을 넣으면 >>>[(3,3)] 이렇게 결과값이 나오는데, 나는 숫자만 필요한 것이므로 answer에서 [0][0]만 가져오면 됨.

(근데 굳이 괄호 안에 숫자 1 입력하지 않아도 되는게 마지막에 내림차순으로 정렬된 answer에서 값을 가져올 때 [0][0]을 가져옴)

 

최빈값 구하는 식은 완료했는데 최빈값이 여러 개인 경우 -1을 return하는 걸 못함 ....

 

리플릿에서는 잘 작동되는데 코딩테스트 페이지에서는 오류남 ㅜㅡㅜ