TIL

2024년 8월 26일 TIL

kagan-draca 2024. 8. 26. 21:31

https://kagan-draca.tistory.com/221

 

문제 63. 숫자 짝꿍(난이도 7)(객체 사용 {})

비효율적으로 풀었지만, 일단 풀긴 풀었다... let num1 = {}, num2 = {}      for(let i of X) {     if(num1[i]) num1[i]++;     else num1[i] = 1;}for(let i of Y){     if(num2[i]) num2[i]++;     else num2[i] = 1;} X, Y 문자

kagan-draca.tistory.com

 

https://kagan-draca.tistory.com/219

 

3-1 Challenge 두산이 안타를 몇 개 쳐야 이기는가?

const doosanScore = Math.floor(Math.random() * 100 - 0 + 1);const kiaScore = Math.floor(Math.random() * 100 - 0 + 1);//임의의 점수 부여console.log("현재 두산 점수 : " + doosanScore);console.log("현재 기아 점수 : " + kiaScore);const resul

kagan-draca.tistory.com

 

 

https://kagan-draca.tistory.com/220

 

3-2 Challenge 배열에 1 최대 개수 구하기

let arraySend = (array, k) => {  let obj = {};  // 개수를 담을 객체  for (let i = 0; i array.length; i++) {    obj[i] = newArrayMake(array, k, i);    // array의 index i 부터    // 0을 k번 바꿀 때    // 1의 전체 개수  }  ret

kagan-draca.tistory.com

 

오늘은 위와 같은 문제를 풀어봤다.

 

숫자 짝꿍 문제는 객체와 반복문을 많이 사용해서

시간 초과가 날 줄 알았지만

다행이 별 탈 없이 테스트를 통과 했다.

 

3-1 Challenge 같은 경우 비교적 쉽게 문제를 풀 수 있었지만,

 

3 -2 Challenge는 과정을 나눠서 풀어야 할 정도로 나에게는 복잡했다...

 

단계로는,

 

1 입력받은 배열과 k(0 허용 개수)를 바탕으로

index부터 k가 허용하는 1의 개수를 

구해야 했고

 

2. 그렇게 만들어진 개수와 시작 index를

바탕으로 시작 index는 key, 개수는 value가

되게 객체를 만들어야 했다.

 

3. 마지막으로 객체에서 value가

가장 높은 값을 찾는 것으로 문제를 해결했다.

 

비효율적으로 풀었다고 생각은 들지만...

다른 방법이 떠오르지 않는다...

 

(현재 더 효율적인 방법으로 수정 됨)

 

(자세한 코드와 설명은 3-2 Challenge 사이트에 존재 합니다.)

 

마지막으로 오늘은

 

라이브러리를 만드는 방법을 배웠다.

 

 

https://kagan-draca.tistory.com/222

 

CMD 게임 만들기 4Days

오늘은 라이브러리를 만드는 방법을 배웠다. 만약 내가 몬스터나 플레이어 Class를  main.js 파일이 아닌다른.js로 만들 경우 main.js에 import Monster from '../Character/Monster.js';import Player from '../Character/

kagan-draca.tistory.com

 

비록 라이브러리를 바탕으로 게임을 만들어보지는 못 했지만

위의 지식을 바탕으로 다음 기회에는 만들어 볼 수 있을 것 같다.