Today I Learn

[TIL] 99클럽 코테 스터디 3일차 TIL + 오늘의 학습 키워드

diligentCat 2025. 1. 16. 22:39
⭐ 뜨거운 붕어빵
🔎 문제 설명

 

고려대학교에 입학한 새내기 호돌이는 안암역을 지나다가 한 붕어빵 장수를 만났어요.

“안녕, 안녕, 안녕하십니까, 아저씨! 붕어빵 두 개 주세요.”

“안녕을 세 번 외쳤으니 붕어빵 세 개!”

붕어빵 두 개의 값을 내고 세 개를 받은 호돌이는 기분이 좋았어요. 호돌이가 붕어빵 하나를 꺼내어 한 입 물었는데…. 너무 뜨거워서 그만 붕어빵을 떨어뜨리고 말았어요ㅠㅠ

붕어빵은 자유 낙하운동을 하면서 땅에 떨어졌는데 신기하게도 좌우가 뒤집힌 모양으로 착지했답니다. 호돌이가 붕어빵을 한 입 물기 전의 모양이 입력으로 주어지면, 땅에 떨어졌을 때에는 어떤 모양일지 출력하세요.

 

🔎 제한사항
  • 첫째 줄에는 두 개의 정수 N과 M(0≤N,M≤10)이 주어집니다. 둘째 줄부터 N개의 줄에 걸쳐 붕어빵의 모양이 주어집니다. 각 행에는 공백을 나타내는 ‘0‘ 또는 붕어빵을 나타내는 ‘1’이 총 M개 주어집니다. 
✅ 문제 포인트
  • 2번째 인자인 문자열의 각 문자를 1번째 인자인 숫자만큼 반복한 문자를 출력한다.
✅ 사용 함수 및 알고리즘
  • split()
  • reverse()
  • join()
✅ 문제 해결 방향성
  • 입력으로 주어지는 각 행을 반전시켜서 출력하면 됩니다. 입력의 1행 1열은 출력의 1행 M열로, 입력의 1행 2열은 출력의 1행 M-1열로 … 입력의 1행 M열은 출력의 1행 1열로 … 입력의 N행 M열은 출력의 N행 1열로 출력하세요.
✅ 문제풀이
const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n')
const result = []
for(let i = 1 ; i < input.length ; i++){
    result.push(input[i].split('').map(Number).reverse().join(''))
}

console.log(result.join('\n'))
 ✅ 회고할 점

 

  • 처음 들어오는 숫자들을 보고 어떻게 해야하나 생각하고 있었는데 밑에 힌트가 너무 킥이라서 들어오는걸 반대로 돌린 후 배열에 넣는 방법을 생각해보았습니다.