๋ฌธ๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ๋ค ๋ณ์ ์ด๊ธฐํ์ ๋ํด์ ์๋ฌธ์ ํ๊ฒ ๋์์๋ค.
(1) ๋ฌธ์ ๋ฐ์
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int f = scanner.nextInt();
int len = Integer.toString(n).length();
String result = ""; // ์๋ฌธ์ ๊ฐ๊ฒ ๋ ๋ถ๋ถ
String text = ""; // ์๋ฌธ์ ๊ฐ๊ฒ ๋ ๋ถ๋ถ
for(int i = 0; i < 100; i++) {
text = Integer.toString(n).substring(0, len - 2);
if(i < 10) {
result = "0" + i;
} else {
result = String.valueOf(i);
}
text += result;
if(Long.parseLong(text) % f == 0) {
break;
}
}
System.out.println(result);
}
}
* ํด๋น ์ฝ๋๋ ์ต์ข ์ ์ถ ์ฝ๋ ์ด์ ์ ์ฝ๋์ด๋ค.
์ธํ ๋ฆฌ์ ์ด IDEA์์๋ ์๋์ผ๋ก ์ฝ๋ ๊ฒ์ฌ๋ฅผ ํด์ฃผ๋ ์ฝ๋ ์ธ์คํ์ ์ ์ง์์ ํด์ค๋ค.
์๋ ์ฝ๋ ๊ฒ์ฌ๋ฅผ ํตํด ์๊ฒ ๋ ์ฌ์ค์ result์ text๋ผ๋ ์ด๋ฆ์ String ๋ณ์๋ฅผ ์ ์ธํ๋ ๋ถ๋ถ์์ result๋ ๋ณ์๋ฅผ ์ด๊ธฐํ๋ฅผ ํด์ฃผ๋๊ฒ ๋ง๋ค๊ณ ๋์๊ณ text๋ ๋ณ์๋ฅผ ์ด๊ธฐํ ํ ํ์๊ฐ ์๋ค๊ณ ๋์๋ค. ์ด ๋ถ๋ถ์์ ์๋ฌธ์ ๊ฐ๊ฒ ๋์๋ค.
- ๋ฐ์ for๋ฌธ๊ณผ ์กฐ๊ฑด๋ฌธ์์ ๋ณ์๋ฅผ ์ด๊ธฐํ ํ๊ณ ์๋๋ฐ? ๊ตณ์ด ๋ณ์๋ฅผ ์ด๊ธฐํ ํด์ผํ ๊น?
๊ถ๊ธํด์ result์ ๋ณ์๋ฅผ ์ด๊ธฐํ ํ์ง ์๊ณ ์ ์ธ๋ง ํ๊ณ ์ฝ๋๋ฅผ ์ณ๋ณด๋, ์ธ์คํ์ ์ด ์ปดํ์ผ ์ค๋ฅ๋ฅผ ๋ด๋ฑ์๋ค.
- ๋งจ ๋ฐ์ ์ถ๋ ฅ๋ฌธ ๋ณ์์์ ์ปดํ์ผ ์ค๋ฅ๋ฅผ ๋ด๋ฑ๊ณ ์์๋ค.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int f = scanner.nextInt();
int len = Integer.toString(n).length();
String result; // ์๋ฌธ์ ๊ฐ๊ฒ ๋ ๋ถ๋ถ
String text; // ์๋ฌธ์ ๊ฐ๊ฒ ๋ ๋ถ๋ถ
for(int i = 0; i < 100; i++) {
text = Integer.toString(n).substring(0, len - 2);
if(i < 10) {
result = "0" + i;
} else {
result = String.valueOf(i);
}
text += result;
if(Long.parseLong(text) % f == 0) {
break;
}
}
System.out.println(result);
}
}
์ด ๋ฌธ์ ๋ result์ text ๋ณ์ ์ ์ธ๋ถ์์ ์ ์ธ์ ํ์ง๋ง ์ด๊ธฐํ๋ฅผ ํ๋ ๊ณผ์ ์ for๋ฌธ์ด๋ if๋ฌธ๊ณผ ๊ฐ์ด ๋ ๋ค๋ฅธ ์ค์ฝํ๋ฅผ ์ฌ์ฉํ๊ณ ์๊ธฐ ๋๋ฌธ์, ํด๋น ๋ถ๋ถ์์ ์ด๊ธฐํ๊ฐ ์ ๋๋ก ์ด๋ค์ง์ง ์์์ ๋ ์ถ๋ ฅ๋ฌธ์๋ ๋ฌด์จ๊ฐ์ด ์ถ๋ ฅ์ด ๋ ์ง ์ ์ ์๊ธฐ ๋๋ฌธ์ ๋ด๋ฑ๋ ์ค๋ฅ์ด๋ค.
์ปดํ์ผ๋ฌ ์ ์ฅ
1. for ๋ฃจํ๊ฐ ํ ๋ฒ๋ ์คํ๋์ง ์์ ์ ์๋ค.
2. if ์กฐ๊ฑด๋ฌธ์ด ์คํ๋์ง ์์ ์ ์๋ค.
3. break๋ฌธ์ผ๋ก ์ธํด ์ด๊ธฐํ๊ฐ ์ ๋ ์ ์๋ค.
(2) ๋ฌธ์ ํด๊ฒฐ
ํด๋น ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์, result ๋ณ์๋ฅผ for๋ฌธ๊ณผ if๋ฌธ ์ค์ฝํ์ ๋ฃ์ด์ ์ถ๋ ฅ์ํ๊ฒ ํ๋ค.
์ด๋ฐ์์ผ๋ก ๋ณ์๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ค๋ฉด, ๋ฐ๋์ ๋ณ์๊ฐ ์ด๊ธฐํ๊ฐ ๋ ์ดํ์ ์ด์ฉ์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ปดํ์ผ ์ค๋ฅ ์์ด ์ฝ๋๋ฅผ ์คํํ ์ ์๊ฒ ๋๋ค.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int f = scanner.nextInt();
int len = Integer.toString(n).length();
String result;
String text;
for(int i = 0; i < 100; i++) {
text = Integer.toString(n).substring(0, len - 2);
if(i < 10) {
result = "0" + i;
} else {
result = String.valueOf(i);
}
text += result;
if(Long.parseLong(text) % f == 0) {
System.out.println(result);
break;
}
}
}
}
(3) ๊ฒฐ๋ก
๋ณ์ ์ด๊ธฐํ๋ ํ์์ด๋ค.
(4) ํ๊ณ
๋งค์ฐ ๊ธฐ๋ณธ์ ์ธ ๋ด์ฉ์ด์ง๋ง, ์ฒ์ ๋ฐฐ์ธ๋ ๊ทธ๋ฅ ๊ทธ๋ ๊ตฌ๋ ํ๊ณ ๋์ด๊ฐ๋ ๋ถ๋ถ์ ์ง๊ธ ์์ ๊ณฐ๊ณฐํ ์๊ฐํด๋ณด๋ ์ด์ ๋ฅผ ์ฐพ์ ์ ์์๊ณ ๊ธฐ๋ณธ๊ธฐ์ ๋ํ ์ดํด๋๊ฐ ๋์ฑ ๋์ด๋ ๊ฒ ๊ฐ๋ค.
ํด๋น ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ ๋ฐฑ์ค ๋ฌธ์ ์ด๊ณ ํด๊ฒฐํ ์ฝ๋๋ ๊นํ๋ธ์ ์ฌ๋ผ๊ฐ ์์ต๋๋ค.
Algorithm/๋ฐฑ์ค/Bronze/1075.โ ๋๋๊ธฐ at main · Hongjunbin/Algorithm
[์๊ณ ๋ฆฌ์ฆ] ๋ฐฑ์ค & ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์ ํ์ด. Contribute to Hongjunbin/Algorithm development by creating an account on GitHub.
github.com
'โJava > ๐Java Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] Java์ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ด๋? (0) | 2025.03.06 |
---|---|
[Java] Annotation ์ด๋? ( ์ ๋ ธํ ์ด์ ) (0) | 2024.11.05 |
[Java] JVM ๋์ ์๋ฆฌ (0) | 2024.10.23 |
[Java] ํด๋์ค์ ๊ฐ์ฒด์ ์ ์ (9) | 2024.10.05 |
[Java] ์์ ( Extends ) (1) | 2024.05.01 |