구현

문제 설명https://www.acmicpc.net/problem/5073 5073번: 삼각형과 세 변각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.www.acmicpc.net 문제 풀이 방법삼각형의 경우를 수를 if-elseif 문으로 설정하고 문제를 풀었다. 코드const path = __dirname + '/예제.txt'; // /dev/stdinlet input = require('fs').readFileSync(path).toString().trim().split('\n').map(e => e.split(' ').map(Number).sort((a, b) => b - a));const arr = input.slice(0, inpu..
코드 const path = __dirname + '/예제.txt'; // /dev/stdin let input = require('fs').readFileSync(path).toString().trim().split('\n').map(e => e.split(' ')); const [N, M, rotaTime] = input.shift().map(Number); const board = input.map(e => e.map(Number)); const solution = (N, M, board) => { let answer = '' let arr = [...board]; for (let i = 0; i < rotaTime; i++){ const newArr = spin(N, M, arr); arr = [..
문제 설명 문제 풀이 방법 각 도형의 경우의 수를 따져 나올 수 있는 모양들이 특정 좌표가 주어졌을 때, 그 좌표를 좌상단에 고정한뒤 그 좌표를 기준으로 브럭의 위치에 해당하는 보드에서의 숫자들을 던한 뒤 Math.max를 이용해 비교해준다. 코드 1 // 빡구현을 깨닫게 해준 문제 const path = __dirname + '/예제.txt'; // /dev/stdin let input = require('fs').readFileSync(path).toString().trim().split('\n').map(e => e.split(' ').map(Number)); const [height, width] = input[0]; const board = input.splice(1); // 모든 브럭의 기준은..
문제 설명 문제 풀이 방법 입력의 구성은 차들의 수, 차들이 들어간 순서, 나온 순서 이렇게 3가지이다. 나온 순서를 기준으로 forEach메서드를 이용해 요소들을 순회하며 passed의 요소가 enters에서의 위치를 보면 1. passed의 다른 값이 추월을 하지 않았다면 현제값이 enters의 0번 인덱스에 위치해 있을 것 2. 만약 다른 값이 추월을 했다면 현제 값은 enters에서의 위치가 0번 인덱스가 아닌 다른 인덱스에 위치할 것 1번의 경우 enters.shift()를 이용해 맨 앞 값을 빼주고 다시 1, 2번 로직을 반복해준다. 2번은 추월을 한 경우이므로 현제 값을 enters.splice(enters.indexOf(현제값), 1)로 제거해 준뒤 1, 2번 로직 반복 코드 const p..
문제 설명 문제 풀이 방법 1부터 num까지의 수가 왼쪽에 큰 수의 개수를 비교하며 배열에 추가해준다. 코드 1 // const path = __dirname + '/예제.txt'; let input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n'); const num = +input[0]; const rule = input[1].split(' ').map(e => +e); const sol = (n, array) => { let arr = new Array(n); for (let i = 0; i < array.length; i++) { let left = array[i]; let cnt = 0; for (let j = 0;..
문제 설명 문제 풀이 방법 알파벳이 들어가는 사전 배열을 만들어준다. for문으로 msg를 순회하며 word에 msg[i]의 문자를 더해준다. 그리고 word가 사전에 있다면 사전에서의 index값을 저장한 뒤 다음 바퀴에서 또 word가 있는지 확인한다. 이때, 없다면 그 word는 사전에 등록하고, 저장한 index값을 answer배열에 push메서드로 넣어준다. 마지막에는 for문이 다 돌때 마지막 index값을 answer배열에 넣어주지 못하기에 for문이 끝나고 마지막 index값을 넣어준다. 이 코드와 내가 처음 생각했던 방식의 순서가 반대이다. 나는 먼저 문자가 있는지 확인한 다음 배열에 넣는 방법이였지만 문제에서는 오류를 일으키는 방법이다. 이렇게 체크한 뒤 데이터를 가공하는 문제는 항상 ..
58청춘
'구현' 태그의 글 목록 (13 Page)