IT 개발자가 되기위한 여정

컴퓨터 공부를 시작함에 앞서 계획 및 개발에 대한 내용을 풀어나갈 생각입니다.

IT 학습/Algorithums

[엘리스 SW 3기] 코테전 입,출력 방식 정리

제로시엘 2022. 8. 21. 01:31

프로그래머스와 다르게 엘리스 플렛폼의 경우

 

기존 백준과 비슷하게 입 출력을 직접 조절하던지 명령어로 관리해야 되는 것이 있다.

 

줄바꿈 , 출력 , ' " ` 등 백틱 콤마정리등 몇가지 따로 기억해둬야 될 것들이 있어서 

 

시험 전 한번 훌터보기 위해 정리한다.

 

1. 출력 시 줄바꿈

// 출력을 원하는 결과값
400
bus
like

// 입력시
"400\nbus\nlike"

먼저 줄바꿈의 경우 \n ->백스페이스 아래에 있는 || (OR)키 버튼을 그냥 누르면 된다.

1 - 1. \n이 포함된 값을 정제하기

// 출력을 원하는 결과값
const input = [ 'elice', 'rabbit', 'cheshire', 'dood', 'hatter' ]

// 입력 값
elice
rabbit
cheshire
dood
hatter

// 입력시
input.split("\n");


// 번외 (출력 시 반복문등을 통해 줄바꿈을 하다보면 마지막에 
// \n을 포함된 걸 지워야 답으로 인정되는 경우가 많습니다. 이경우
return answer.splice(0 , -1)

마찬가지로 정제의 방식인데 입력 값이 하단과 같이 \n (HTML상 줄바꿈) 과 같이 들어온 값을

 

배열로 정제할때 split과 함께 사용 가능하다.

 

그리고 줄바꿈된 String을 출력할 때 마지막에 \n이 빠져야 답으로 인정되는 경우와

 

마지막에 \n이 있어야 답으로 인정되는 경우 두가지가 있다.

 

먼저 answer를 내보내보고 혹시 안된다면 splice(0,-1)을 해보자 (마지막 \n 삭제)

 

 

 

 

2. " , '등을 요구사항에서 출력할 경우

// 출력을 원하는 결과값
"It's all right."

// 입력시
"\"It's all right.\"";

위 줄바꿈이 \n 이였다면 "나 '를 출력하고 싶다면 마찬가지로 앞에 \를 넣어주면 된다.


3. 입력값이 백준과 같이 들어올 경우

const readline = require('readline').createInterface({
    input: process.stdin,
    output: process.stdout,
});

let input = [];

readline.on('line', function(line) {
    input = line.split(' ').map(el => parseInt(el));
}).on('close', function(){ //이 안에 솔루션 코드 작성
    solution(input);
    process.exit();
});

const solution = input => {
    const A = parseInt(input[0]);
    const B = parseInt(input[1]);
    console.log(A+B);
};

과거 엘리서 SW 2기의 경우 백준과 거의 동일한 방식이라

 

readline 혹은 fs를 사용하여 셋팅해줘야 했지만

 

현재는 해당 함수가 기본 삽입되어 프로그래머스와 마찬가지로 솔루션만 해결하면 되는 것 같다.