201001 목 [BOJ] 1934, 11656

kyuhyun·2020년 10월 1일
0

1일1고리즘

목록 보기
18/20

BOJ 1934

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;

public class Main {	

	
    public static void main(String[] args) throws IOException {
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    	BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

    	int T = Integer.parseInt(br.readLine());
    	for(int i=0;i<T;i++) {
    		StringTokenizer st = new StringTokenizer(br.readLine());
    		int A = Integer.parseInt(st.nextToken());
    		int B = Integer.parseInt(st.nextToken());
    		
    		int X = Math.max(A, B);
    		int Y = Math.min(A, B);
    		
    		int common = X;
    		
    		while(true) {
    			if (common % Y == 0)
    				break;
    			common += X;
    		}
    		bw.write(common + "\n");
    	}
    	
       	bw.flush();    	
    	bw.close();
    }
}

내 방식대로 푸니 속도가 288ms가 나왔다.
88ms로 나온 사람들 거를 보니 다들 유클리드 호제법을 이용해서 풀던데, 그거 사용해봐야겠다.


BOJ 11656

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;

public class Main {
	public static void main(String[] args) throws NumberFormatException, IOException {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		String S = br.readLine();
		String[] arr = new String[S.length()];
		
		for(int i=0;i<arr.length;i++) {
			arr[i] = S.substring(i);
		}
		Arrays.sort(arr);
		
		for(int i=0;i<arr.length;i++) {
			bw.write(arr[i] + "\n");
		}
		
		bw.flush();
		bw.close();
	}
}
profile
알고리즘은 즐거워

0개의 댓글