[๋ฐฑ์ค/1009/๋ถ์ฐ์ฒ๋ฆฌ]
https://www.acmicpc.net/problem/1009
1009๋ฒ: ๋ถ์ฐ์ฒ๋ฆฌ
์ ๋ ฅ์ ์ฒซ ์ค์๋ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T๊ฐ ์ฃผ์ด์ง๋ค. ๊ทธ ๋ค์ ์ค๋ถํฐ ๊ฐ๊ฐ์ ํ ์คํธ ์ผ์ด์ค์ ๋ํด ์ ์ a์ b๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ a < 100, 1 ≤ b < 1,000,000)
www.acmicpc.net
<<ํ์ด >>
๋๊ฐ์ง ๋ฐฉ์์ผ๋ก ํ์๋๋ฐ ํฅ์๋ for๋ฌธ์ ์ฐ๋ ์ ์ฐ๋ ์ฐจ์ด์ผ ๋ฟ์ด๋ค ใ ใ
์ด ๋ฌธ์ ๋ Math.pow์ ์๋ฆฌ๋ฅผ ํ์ ํ๊ณ ์์ด์ผ ํ๊ณ Math.pow๋ฅผ ์ด์ฉํ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก double ํ์ ์ด ๋๋ฏ๋ก int๋ก ๊ตฌํ๊ณ ์ ํ๋ฉด ์บ์คํ ์ ํด์ค์ผ ํ๋ค๋ ๊ฒ์ ์ธ์งํด์ผํ๋ค.
๋ํ, ๊ท์น์ผ๋ก ์ธํด ํน์ ๋ฒ์๊น์ง ๊ฐ๋ฉด ๋ค์ ์ฒ์ ๋ถํฐ ์์ํ๊ฒ ํ๋ % ๋ก ๋๋จธ์ง ๊ตฌํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ๋ ์ ์ํ ์ ์ด ์๋ค.
๋ฐ๋ก ๋ค์ ์ฒ์์ผ๋ก ๋์๊ฐ๊ธฐ์ !! ์ด๋ 0์ด ๋๋๋ฐ ์ด 0์ ๊ฐ์ฅ ๋ง์ง๋ง ๊ฐ์ด๋ค. ์ฆ 0์ด ๋์ค๋ฉด ์ ๋๊ณ 0 + ์ฒ์์ผ๋ก ๊ฐ๊ธฐ์ ์ ๊ฐ ์ด ๋ค์ด๊ฐ์ผํ๋ค.
์ด๋ฌํ ๋ถ๋ถ๋ง ์กฐ์ฌํด์ ๊ตฌํํ๋ค๋ฉด ๋ฐ๋ก ํ ์๊ฐ ์๋ค.
import java.util.Scanner;
class Data {
int a;
int b;
public Data(int a, int b) {
this.a = a;
this.b = b;
}
}
class Main {
private int[] solution(Data[] data, int n) {
int[] answer = new int[n];
for (int i = 0; i < n; i++) {
int exp = data[i].b % 4 == 0 ? 4 : data[i].b % 4; // b % 4๊ฐ 0์ผ ๊ฒฝ์ฐ 4๋ฅผ ์ฌ์ฉ
int result = (int) (Math.pow(data[i].a, exp) % 10);
answer[i] = result == 0 ? 10 : result;
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner in = new Scanner(System.in);
int n = in.nextInt();
Data[] data = new Data[n];
for (int i = 0; i < n; i++) {
data[i] = new Data(in.nextInt(), in.nextInt());
}
for (int x : T.solution(data, n)) System.out.println(x);
}
}
import java.time.chrono.MinguoDate;
import java.util.Scanner;
class Data {
int a;
int b;
public Data(int a, int b) {
this.a = a;
this.b = b;
}
}
class Main {
private int[] solution(Data[] data, int n) {
int[] answer = new int[n];
int index = 0;
for (Data x : data) {
int exp = x.b % 4 == 0 ? 4 : x.b % 4;
answer[index++] = (int) (Math.pow(x.a, exp) % 10 == 0 ? 10 : Math.pow(x.a, exp) % 10);
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner in = new Scanner(System.in);
int n = in.nextInt();
Data[] data = new Data[n];
for (int i = 0; i < n; i++) {
data[i] = new Data(in.nextInt(), in.nextInt());
}
for (int x : T.solution(data, n)) System.out.println(x);
}
}
'์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ธํ๋ฐ/Greedy/1.์จ๋ฆ์ ์] (0) | 2024.03.20 |
---|---|
[๋ฐฑ์ค/1010/๋ค๋ฆฌ ๋๊ธฐ] (6) | 2024.03.19 |
[๋ฐฑ์ค/1032/๋ช ๋ น ํ๋กฌํํธ] (5) | 2024.03.18 |
[์ธํ๋ฐ/DFS/8. ์์ด ์ถ์ธกํ๊ธฐ] (4) | 2024.03.15 |
[๋ฐฑ์ค/1152/๋จ์ด์ ๊ฐ์/๋ธ๋ก ์ฆ2] (1) | 2024.03.14 |
๋๊ธ