[코딩테스트] 입출력 공부

YJMINT·2023년 7월 11일
1

코딩테스트

목록 보기
1/6

◽️계기

문제 접근 방식은 맞는데, 구현에서 막히는 모습이 짜증나 입출력부터 함수까지 확실하게 공부 해보려고 한다. 요즘 계속 입력값을 잘못 가져오는 바람에 원하는 출력값을 얻지 못했다. 템플릿을 복붙하여 사용하기 보단 제대로 이해하고 사용해야 더욱 효과적으로 사용할 수 있을 거 같다는 생각에 정리하게 되었다. 자주 사용하는 코드 혹은 다른 사람의 입출력 센스를 내것으로 만들 계획이다.

입출력 받는 방법

  1. input 값
5 3 1
1 6
  1. 줄바꿈 기준으로 input 배열에 저장
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');

input = [ '5 3 1', '1 6' ]
  1. 띄어쓰기 기준으로 input 배열에 저장
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().trim().split(' ');

input = [ '5', '3', '1\n1', '6' ]
  1. 줄바꿈 기준으로 1차 나누고, 띄어쓰기 기준으로 2차 나눠서 배열에 저장
const fs = require('fs');
const input = fs.readFileSync("../input.txt").toString().trim().split('\n').map(v => v.split(' '));

input = [ [ '5', '3', '1' ], [ '1', '6' ] ] 
  1. 줄바꿈 기준, Number타입으로 배열에 저장
const fs = require('fs');
const input = fs.readFileSync("/dev/stdin").toString().trim().split('\n').map(v => v.split(' ').map(Number));

input = [ [ 5, 3, 1 ], [ 1, 6 ] ]
  1. shift() 사용하여 개행별 따로 배열에 저장
const fs = require('fs');
const input = fs.readFileSync("/dev/stdin").toString().trim().split('\n').map(v => v.split(' ').map(Number));
const firstLine = input.shift();

input = [ [ 1, 6 ] ]
firstLine = [ 5, 3, 1 ]
  1. shift() + 구조 분해 할당
const fs = require('fs');
const input = fs.readFileSync("/dev/stdin").toString().trim().split('\n').map(v => v.split(' ').map(Number));
const [A, B, C] = input.shift();

input = [ [ 1, 6 ] ]
A = 5 , B = 3 , C = 1
profile
YJMINT's develog

0개의 댓글