https://school.programmers.co.kr/learn/courses/30/lessons/120808

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

const GCD = (num1, num2) => {
    let result = -1;
    for(let i = 2; i <= Math.min(num1, num2) ; i++ ) {
        if(num1 % i === 0 && num2 % i === 0) {
            result = i;
        }
    }
    return result;
}

function solution(numer1, denom1, numer2, denom2) {
    numer1 = numer1 * denom2;
    numer2 = numer2 * denom1;
    denom1 = denom1 * denom2;
    denom2 = denom2 * denom1;
    
    let numer = numer1 + numer2;
    let denom = denom1;
    
    return GCD(numer, denom) === -1 ? [numer, denom] : [numer/GCD(numer, denom) , denom/GCD(numer, denom) ]
}
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/120878

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

const gcd = (num1, num2) => {
    let result = -1;
    for(let i = 2; i <= Math.min(num1, num2) ; i++) {
        if(num1 % i === 0 && num2 % i === 0 ) {
            result = i;
        }
    }
    return result;
}

const solve = (num) => {
    const arr = [];
    let i = 2;
    while(i <= num) {
        if(num % i !== 0) {
            i++;
        } else {
            arr.push(i);
            num = num / i;
            i = 2;
        }
    }
    return arr;
}

function solution(a, b) {
    var answer = 0;
    while(gcd(a,b) > 0) {
        const Gcd = gcd(a,b);
        a = a/Gcd;
        b = b/Gcd;
    }
    
    const result = solve(b).filter(a => a !== 2 && a !== 5);
    
    return result.length === 0 ? 1 : 2;
}
728x90

https://www.acmicpc.net/problem/10814

 

10814번: 나이순 정렬

온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을

www.acmicpc.net

const fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split("\n");

const N = Number(input[0]);
let arr = [];

for(let i = 1 ;i <= N ; i++) {
    const [ age, name ] = input[i].split(' ');
    arr.push([Number(age), name]);
}

arr.sort(function(a,b) {
    if(a[0] > b[0]) return 1;
    else if(a[0] < b[0]) return -1;
    else return 0;
})

arr = arr.map((a) => a[0]+" "+a[1]);

console.log(arr.join('\n'));
728x90

https://www.acmicpc.net/problem/2839

 

2839번: 설탕 배달

상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그

www.acmicpc.net

const fs = require('fs');
let input = fs.readFileSync('/dev/stdin').toString().split('\n');
const K = Number(input[0]);
let e = Math.floor(K/5);

let result = -1;

for(let i = e ; i >= 0 ; i--) {
    let tmp = K - (i * 5);
    if(tmp % 3 === 0) {
        result = i + (tmp/3);
        break;
    }
}
console.log(result);
728x90

+ Recent posts