본문 바로가기
알고리즘 PS/알고리즘 일반

코드 스니펫

by 백호루이 2022. 9. 21.
반응형

1. class 객체 배열의 정렬

  - point의 값을 기준으로 오름차순 정렬

class Build implements Comparable<Build> {
    int point;
    int height;
    Build (int p, int h) {
        this.point = p;
        this.height = h;
    }

    @Override
    public int compareTo (Build o) {
        return this.point - o.point;
    }
}

Arrays.sort(A);

 

2. 정수를 한자리씩 분리하는 방법

    int Mod(int sum) {
        int mod = 1;
        for (int i=1; i<N; i++) {//자릿수 만큼 mod를 만들어준다.
            mod *= 10;
        }

        while (N > 0) {
            sum += number/mod; // 제일 앞자리를 떼서 더한다.
            number = number%mod; // 앞자리를 떼고 나머지를 모수로 만든다.
            mod /= 10; // mod를 한자리 감소시킨다.
            N--; // 자릿수
        }
        return sum;
    }

 

3. 최대 공약수 구하기

    - 유클리드 호제법
    - b%a의 나머지 r1
    - a%r1의 나머지 r2 이런식으로 반복
    - 마지막에 r이 0이 나오면 b%a의 a가 최대공약수이다.

int GCD(int a, int b) {
    if (b%a == 0) return a;
    else return GCD(b%a, a);
}
반응형

댓글