[DevNote] 0321

Noah Ko·2022년 6월 19일
0

DevNote

목록 보기
21/31
post-thumbnail

Today I Learn (0321)

Algorithm

1037 약수

첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다.

문제링크

const fs = require('fs');
const input = fs.readFileSync("./dev/stdin").toString().trim().split("\n");
const nums = input.map(v => v.split(' ').map(x => +x));
const factor = nums[1]

if (factor.length == 1) {
  console.log(factor[0] * factor[0])
} else {
  factor.sort((a,b)=>a-b)
  console.log(factor[0] * factor[factor.length - 1])
}
  • 약수의 개수가 짝수인 것과 홀수인것으로 나눈다.
  • 짝수인 경우, 처음과 마지막 수를 곱하여 출력해준다.
  • 홀수인 경우, 중간 숫자를 구한 후 제곱해주게 된다.

오늘의 구현 내용 정리

  • 홈트게더에서 다른 사용자에게 링크로 초대하기위해 URL을 복사해야 하는 것을 구현. 버튼 클릭시 URL 구현
<BtnWrap>
  <Btn onClick={setSound}>
    {soundOn ? (
      <>
        <img src={Notmute} alt="음소거해제" />
        마이크켜기
      </>
    ) : (
      <>
        <img src={Microphone} alt="음소거" />
        마이크끄기
      </>
    )}
  </Btn>
  <Btn onClick={setVideo}>
    {videoOn ? (
      <>
        <img src={NoVideo} alt="마이크 음소거" />
        비디오켜기
      </>
    ) : (
      <>
        <img src={Video} alt="카메라 버튼" />
        비디오끄기
      </>
    )}
  </Btn>
  <Btn onClick={fighting}>
    <img src={Happy} alt="격려하기" />
    격려하기
  </Btn>
  <Btn onClick={copyUrl}>공유하기</Btn>
</BtnWrap>
  • 공유하기 버튼 추가하고 copyUrl event 넣고, 정의해주기
const copyUrl = () => {
  let url;
  let textarea = document.createElement("textarea");
  document.body.appendChild(textarea);
  url = window.document.location.href;
  textarea.value = url;
  textarea.select();
  document.execCommand("copy");
  document.body.removeChild(textarea);
  alert("URL이 복사되었습니다.");
};
  • textarea의 위치는 어디든 상관없는듯 (임시)
  • 복사하고 없어질 Element임
  • 현재 주소 가져오는 방법 : window.document.location.href;
  • 생각보다 간단하였음.

오늘의 자바스크립트

  • 증가와 감소 연산자
let 하이파이브 = 0;
++하이파이브;
1;
++하이파이브;
2;
  • 앞에 붙이게 되면 계산 값이 나오게 됨
let 하이파이브 = 0;
하이파이브++;
0;
하이파이브++;
1;
하이파이브;
2;
  • 연산자를 뒤에 쓰면 증가 또는 감소하기 전 값이 나옴.한발 늦음
profile
아코 자네 개발이 하고 싶나

0개의 댓글