본문 바로가기

Algorithm/Code Fights (Code Signal)

CodeSignal Intro Databases #8 ContestLeaderboard. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,그래프,Graph,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면..

CodeSignal Intro Databases #8 ContestLeaderboard. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,그래프,Graph,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접, 데이터베이스, sql, query, 쿼리

 

 

CodeSignal Intro Databases #8

Q.

 You are working as a recruiter at a big IT company, and you're actively looking for candidates who take the top places in major programming contests. Since the grand finale of the annual City Competition, you've been reaching out to the top participants from the leaderboard, and successfully so.

You have already interviewed all the prize winners (the top 3 participants), but that's not enough right now. Your company needs more specialists, so now you would like to connect with the participants who took the next 5 places.

The contest leaderboard is stored in a table leaderboard with the following columns:

  • id: unique id of the participant;
  • name: the name of the participant;
  • score: the score the participant achieved in the competition.

 

 큰 IT 기업의 채용자로 일하고 있는데, 주요 프로그래밍 대회에서 상위권을 차지한 후보자들을 찾고 있다. 매해 하는 시 대회에서의 결승 이후로, 리더보드의 상위 참가자들에게 닿을 수 있었다. 이미 탑3는 인터뷰를 했고, 그걸로는 충분하지 않다. 더 많은 스페셜리스트가 필요해서, 그 다음 상위 5명을 더 연결해보려한다.

 컨테스트 리더보드는 leaderboard 테이블에 다음과 같은 컬럼들로 저장되어 있다.

  • id: 유일한, 참가자들의 id
  • name: 참가자들의 이름
  • score: 참가자가 대회에서 획득한 점수

 

 

 The resulting table should contain the names of the participants who took the 4th to 8th places inclusive, sorted in descending order of their places. If there are fewer than 8 participants, the results should contain those who ranked lower than 3rd place.

It is guaranteed that there are at least 3 prize winners in the leaderboard and that all participants have different scores.

 

 

 결과테이블은 4~ 8등 참가자들의 이름을 포함해야하고, 순위에 따라서 내림차순 정렬한다. 8명보다 적은 참가자가 있다면, 3위 이하 참가자들을 포함한다.

 최소 3위까지의 인원이 있고, 모든 참가자들은 다른 점수를 갖고있다.

 

 

 

Example

 

For the following table leaderboard

 

 

id

name

score

 

1 gongy 3001
2 urandom 2401
3 eduardische 2477
4 Gassa 2999
5 bcc32 2658
6 Alex_2oo8 6000
7 mirosuaf 2479
8 Sparik 2399
9 thomas_holmes 2478
10 cthaeghya 2400

 

 

the output should be

 

name

bcc32
mirosuaf
thomas_holmes
eduardische
urandom
  • [execution time limit] 10 seconds (mysql)

 

 

Process

// Process 
//1. Select name

//2. In inner SELECT using ROW_NUMBER() function order by score descending as rownumber

//3. and name in leaderboard table

//4. names selected in 1. will be shown as name

//5. The condition is rownumber > 3, rownumber < 8

 

 

 

// 처리과정

//1. name 을 찾는데,

//2. ROW_NUMBER() 함수를 써서 score 을 내림차순 정렬한 것으로 rownumber 컬럼,

//3. 그리고 name 컬럼을 찾는다. leaderboard 테이블에서.

//4. 1번에서 찾는 name 컬럼은 name 이라는 이름으로 결과를 보여준다

//5. 조건으로는 rownumber 가 3보다 크고, 9보다 작은 것

 

 

Code.. lemme see example code!!!

코드.. 예제코드를 보자!!!

 

 

/*Please add ; after each select statement*/
CREATE PROCEDURE contestLeaderboard()
BEGIN
    SELECT name FROM 
        (SELECT ROW_NUMBER() OVER (ORDER BY score DESC) AS rownumber, name
            FROM leaderboard) AS name
    WHERE rownumber > 3 AND rownumber < 9;
END

 

 

Something else you might like...?

 

 

 

2019/10/20 - [Algorithm/Leet Code] - LeetCode #181 EmployeesEarningMoreTheirManagers. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,그래프,Graph,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면..

 

 

2019/09/04 - [Programming/C++] - How to sort vector in C++, 벡터 정렬하는 방법,sorting,배열,stl,씨쁠쁠,example code,예제코드,표준라이브러리

 

 

2019/10/09 - [Computer/General] - 정보처리기사 실기/필기 - IT신기술동향_전산영어 요점 정리

2019/10/07 - [Computer/General] - 정보처리기사 실기/필기 - 업무 프로세스 요점 정리

 

 

2019/08/14 - [Life/Item review] - Mi Band 4 review, 미밴드4 후기, 장점, 단점, 리뷰, 한글, global review, 미밴드4 글로벌 후기, 리뷰, 구매, 사용방법, setting, 세팅, ProsNCons

 

 

2019/04/14 - [Programming/C++] - C++ Math - sqrt (square root, 제곱근, 루트). stl, math.h, 씨쁠쁠, example code, 예제코드

 

 

2018/10/19 - [Programming/Design Pattern ] - Design pattern - Prototype (디자인패턴 - 프로토타입) / Java C++ C#

 

 

2019/01/12 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #60 sudoku. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive

2019/01/12 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #59 spiralNumbers. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive

2019/01/08 - [Algorithm/Code Fights (Code Signal)] - Aracade Intro #58 messageFromBinaryCode. Algorithm,알고리즘,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive

 

 

2019/09/17 - [Algorithm/Leet Code] - LeetCode #841 KeysAndRooms. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,그래프,Graph,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접

2019/08/28 - [Algorithm/Leet Code] - LeetCode #821 ShortestDistanceToACharacter. Algorithm,알고리즘,LeetCode,Codefights,CodeSignal,코드파이트,코드시그널,예제,문제해결능력,example,c++,java,재귀,recursive,datastructure,techinterview,coding,코딩인터뷰,기술면접..

 

 

2018/12/28 - [Programming/Software Architecture] - Perfecting OO's Small Classes and Short Methods. 완벽한 객체지향의 작은 클래스와 짧은 메소드, Book:ThoughtWorks Anthology, Java,cpp,자바,oop,좋은코드,객체지향프로그래밍 - (#9, Tell, Don't Ask)

2018/12/26 - [Programming/Software Architecture] - Perfecting OO's Small Classes and Short Methods. 완벽한 객체지향의 작은 클래스와 짧은 메소드, Book:ThoughtWorks Anthology, Java,cpp,자바,oop,좋은코드,객체지향프로그래밍 (1)

 

 

2019/01/14 - [Programming/Java] - 자바 메모리 누수 체크/확인/고치는 방법, Memory leak check/fix in Java application, cleanCode/좋은코드/oop/객체지향

 

 

2019/02/19 - [Life/Health care] - Lysine 라이신 usage/side effects/dosage 효과/효능/부작용/성인,소아 용법, 복용법

2019/02/16 - [Life/Health care] - Finasteride 피나스테라이드,탈모약 usage/side effects/dosage 효능/부작용/효과/sexual effect/두타스테라이드/프로페시아/propecia/finpecia/카피약/copy drug/hair loss

2019/02/25 - [Life/Health care] - Folic Acid 엽산 vitaminB9,비타민M usage/side effects/dosage 효과/효능/부작용/성인,소아 용법, 복용법

2019/02/28 - [Life/Health care] - Vitamin K, 비타민 K usage/side effects/dosage 효능/부작용/성인,소아 용법

2019/03/03 - [Life/Health care] - Vitamin B1, Thiamine, 비타민 B1, 티아민 usage/side effects/dosage 효능/부작용/성인,소아 용법