알고리즘/삼성 SW expert Academy

[SWEA] 9839. 최고의 쌍_JAVA

뇌장하드 2022. 5. 23. 15:40

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXGBGehqPAADFAXR 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

 

 

한자리씩 확인 할때 하는 방법 

 int num=t%10; //일의 자리 추출 123-> 3;
t/=10; //일의 자리 버리기 123-> 12;

 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
class Solution{
    public static void main(String args[]) throws Exception{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
       int T=Integer.parseInt(br.readLine());
       String arr[];
       int arrNum[];

        for(int test_case = 1; test_case <= T; test_case++) {
            int n=Integer.parseInt(br.readLine());
            arr=br.readLine().split(" ");
            arrNum=new int[arr.length];

            for(int j=0;j<arr.length;j++){
                arrNum[j]=Integer.parseInt(arr[j]);
            }
            int maxMulti = -1;
            for(int j=0;j<arrNum.length-1;j++){
                int x=arrNum[j];
                for(int z=j+1;z<arrNum.length;z++){
                    int y=arrNum[z];
                    int t=x*y;
                    int num=t%10; //일의 자리 추출 123-> 3;
                    boolean check = true; // 연속된 수인지 체크
                    t/=10; //일의 자리 버리기 123-> 12;
                    while (t > 0) {
                        if (t % 10 == num - 1) { //연속적일때
                            num--;
                        }else {
                            check=false;
                            break;
                        }
                        t/=10;
                    }
                     if(check&&maxMulti<x*y){
                        maxMulti=x*y;
                    }
                }
            }
            bw.write("#"+test_case+" "+maxMulti+"\n");
        }
        br.close();
        bw.close();
    }
}