본문 바로가기
IT/Javascript

나머지가 1이 되는 수 찾기

by DOSGamer 2022. 7. 12.
반응형

문제

자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.

제한조건

  • 3 ≤ n ≤ 1,000,000

풀이방향

  • 입력된 값을 2부터 순차적으로 나눠서 나머지가 1인 값을 찾는다.

문제풀이

function findRemainderOne(n) {
  let x = 1;
  while(x++) {
    if (n % x === 1) return x;
  }
}

export { findRemainderOne };
import { findRemainderOne } from "../src/findRemainderOne";

describe("findRemainderOne", () => {
  it("should return 3 for 10", () => {
    expect(findRemainderOne(10)).toBe(3);
  });

  it("should return 11 for 12", () => {
    expect(findRemainderOne(12)).toBe(11);
  });
});

문제출처

다른 풀이

const solution = (n) => {
  for (let i = 2; i < n; i++) {
    if (n % i === 1) {
      return i;
    }
  }
};
반응형

'IT > Javascript' 카테고리의 다른 글

문자열 다루기  (0) 2022.07.13
최대공약수와 최소공배수  (0) 2022.07.13
가운데 글자 가져오기  (0) 2022.07.13
평균구하기  (0) 2022.07.13
서울에서 김서방 찾기 (코딩테스트)  (0) 2022.07.12
부족한 금액 찾기  (0) 2022.07.12
짝수와 홀수  (0) 2022.07.12
나누어 떨어지는 숫자 배열 (코딩테스트 문제)  (0) 2022.07.12