[SQL][HackerRank] Draw The Triangle 1~2 해석/풀이

Leo Kim·2021년 3월 2일
0

SQL - 문제풀이

목록 보기
3/4
post-thumbnail

Draw The Triangle 1~2 문제풀이

해커랭크 바로가기 | 해당문제 바로가기(1) | 해당문제 바로가기(2)

  • 해커랭크의 easy 난이도 문제
  • SQL문제로는 흔치않게 별로 계단모양을 출력하는 문제

문제개요

Draw The Triangle 1

  • P(R) represents a pattern drawn by Julia in R rows. The following pattern represents P(5):
  • Write a query to print the pattern P(20).

    P(R)는 그려진 패턴을 나타냄. 다음 패턴은 P(5)를 나타냄.
    P(20)일때의 패턴을 출력하는 쿼리를 써라

Draw The Triangle 2

  • P(R) represents a pattern drawn by Julia in R rows. The following pattern represents P(5):
  • Write a query to print the pattern P(20).

    P(R)는 그려진 패턴을 나타냄. 다음 패턴은 P(5)를 나타냄.
    P(20)일때의 패턴을 출력하는 쿼리를 써라

아이디어

우선 생각난 것은

  • '@set = ' 활용
  • Repeat
  • 대입연산자 ':='

문제풀이 Draw The Triangle 1

SET @number = 21;
SELECT REPEAT('* ', @number := @number - 1) FROM information_schema.tables LIMIT 20;
  • SET @number = 21을 하는 이유는 21-1로 select구문이 시작되어 첫번째 별들이 20개가 나오도록 하기 위함
  • repeat구문을 통해 21에서 1씩 반복해서 빼며 출력해줌
  • 문제에서 P(20)까지 구하라고 했으므로, LIMIT 20사용

문제풀이 Draw The Triangle 2

set @NUMB = 0;
select repeat('* ', @NUMB := @NUMB + 1) from information_schema.tables LIMIT 20;
  • SET @NUMB=0 : repeat을 쓰며 갯수를 늘려줄 NUMB를 먼저 명명
  • repeat('* ', @NUMB := @NUMB + 1)을 통해 NUMB를 반복하며 1씩 증가시키기
  • 위에서 '* '사용하기 - 뒤에 빈칸을 입력하지 않으면 FAIL

앞으로도 시리즈로 출제된 문제들은 묶어서 풀이를 올려볼 예정이다.
틈틈이 주1회씩은 업로드 해보려고 한다.
😉

profile
항상 쉽지 않습니다

0개의 댓글