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();
}
}
'알고리즘 > 삼성 SW expert Academy' 카테고리의 다른 글
[SWEA] 8821. 적고 지우기_JAVA feat.set사용하기 (0) | 2022.05.24 |
---|---|
[SWEA] 9778. 카드 게임_JAV (0) | 2022.05.23 |
[SWEA] 10059. 유효기간_JAVA (0) | 2022.05.22 |
[SWEA] 10570. 제곱 팰린드롬 수_JAVA (0) | 2022.05.21 |
[SWEA] 10726. 이진수 표현_JAVA (0) | 2022.05.21 |