다이얼 - javascript
문제 (출처)
👉https://www.acmicpc.net/problem/5622
나의 접근
-
숫자와 다이얼을 어떻게 연관 시킬까 고민을 하다 Object 구조로 하드코딩해도 될까 라는 생각을 하였다.
-
주어진 문자가 dial key에 포함되어 있을 경우 해당 문자를 입력하는데 걸리는 시간을 더하여 최소 시간 값을 구하였다.
풀이
const fs = require("fs");
const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt";
let input = fs.readFileSync(filePath).toString().split('');
const dial = {
ABC: 3,
DEF: 4,
GHI: 5,
JKL: 6,
MNO: 7,
PQRS: 8,
TUV: 9,
WXYZ: 10,
}
let result = 0;
for(let i = 0; i < input.length; i++){
for(let key in dial){
if(key.includes(input[i])){
result += dial[key];
break;
}
}
}
console.log(result);
오늘의 배운점 및 교훈
-
다시 한번 느끼지만... 계속 생각만하고 실제적으로 코드를 작성하지 않으면 문제를 풀수 없다. 직접 내가 코드를 쳐봐야 내 실력이 향상 된다는 것을 잊지말자.
-
헷갈리는거는 나중에 봐야지 하지말고 지금 정리를 해야겠다. 매번 정리 하다보면 언젠가는 내것이 되겠지...
-
그리고 전에 풀었던거 주말에는 꼭 복습하는 시간을 가져야겠다... 이거이거 늙어서 그런지 자꾸 전에 풀었던거 복습을 안하니 자꾸 기억이 안나구만 ㅠ
//for in object 할 때 쓴다.
const object = { a: 1, b : 2};
for (let key in object){
console.log(`${key} : ${object[key]}`)
}
//expected output:
// "a: 1"
// "b: 2"
//for of 배열 할때 쓴다.
const array1 = ['a', 'b', 'c'];
for (let element of array1) {
console.log(element);
}
// expected output: "a"
// expected output: "b"
// expected output: "c"
Author And Source
이 문제에 관하여(다이얼 - javascript), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@donq/다이얼-javascript저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)