[D3] 무한 문자열 - 15758
성능 요약
메모리: 20,408 KB, 시간: 133 ms, 코드길이: 497 Bytes
제출 일자
2023-10-21 09:29
출처: SW Expert Academy, https://swexpertacademy.com/main/code/problem/problemList.do
import java.util.*;
import java.io.*;
class Solution
{
public static void main(String args[]) throws Exception
{
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int tc = 1; tc <= T; tc++)
{
String a = sc.next();
String b = sc.next();
int lcm = lcm(a.length(),b.length());
StringBuilder result1 = new StringBuilder();
StringBuilder result2 = new StringBuilder();
while(result1.length() != lcm){
result1.append(a);
}
while(result2.length() != lcm){
result2.append(b);
}
System.out.print("#" + tc +" ");
if(result1.toString().equals(result2.toString())){
System.out.println("yes");
}else{
System.out.println("no");
}
}
}
private static int lcm(int a,int b){
return a * b / gcd(a,b);
}
private static int gcd(int a, int b){
while(b!=0){
int tmp = b;
b = a % b;
a = tmp;
}
return a;
}
}
더 쉬운 방법
import java.util.*;
import java.io.*;
class Solution
{
public static void main(String args[]) throws Exception
{
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int tc = 1; tc <= T; tc++)
{
String a = sc.next();
String b = sc.next();
System.out.print("#" + tc +" ");
if((a+b).equals(b+a)){
System.out.println("yes");
}else{
System.out.println("no");
}
}
}
}
'알고리즘 - SWEA > D3' 카테고리의 다른 글
[SW expert Academy] SWEA 15230번 알파벳 공부 자바(Java) (0) | 2023.10.21 |
---|---|
[SW expert Academy] SWEA 15612번 체스판 위의 룩 배치 자바(Java) (1) | 2023.10.21 |
[SW expert Academy] SWEA 15941번 평행사변형 자바(Java) (0) | 2023.10.21 |
[SW expert Academy] SWEA 16002번 합성수 방정식 자바(Java) (0) | 2023.10.21 |
[SW expert Academy] SWEA 16800번 구구단 걷기 자바(Java) (0) | 2023.10.20 |