๋ฌธ์ (์ถ์ฒ: https://www.acmicpc.net/problem/3077)
< ์์ง์๋ >
๋ฌธ์ ํ์ด
HashMap <String, Integer>๋ฅผ ์ฌ์ฉํด์ ๋ ๊ฐ์ ํด์ ์ ๊ณจ๋์ ๋ ์ซ์๋ฅผ ๋น๊ตํ์ฌ ์์๋ฅผ ํ๋จํ๋ค.
my solution (Java)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.StringTokenizer;
public class _3077_ { // ์์ง์๋
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(bf.readLine());
st = new StringTokenizer(bf.readLine());
HashMap<String, Integer> map = new HashMap<>();
for (int i = 0; i < n; i++) {
map.put(st.nextToken(), i);
}
int b = n * (n - 1) / 2;
int a = 0;
String arr[] = new String[n];
st = new StringTokenizer(bf.readLine());
for (int i = 0; i < n; i++) {
arr[i] = st.nextToken();
}
for (int i = 0; i < n; i++) {
for (int j = i + 1; j < n; j++) {
if (map.get(arr[i]) < map.get(arr[j]))
a += 1;
}
}
System.out.println(a + "/" + b);
}
}
Main
๋ณ์)
n : ํด์ ์ ๊ฐ์
map : HashMap <ํด์ ์ด๋ฆ, ์์>
b : ๋ง์
a : ํ๋ ์ ์
arr : ๋ต์
- ํด์ ์ ๊ฐ์(n) ์ ๋ ฅ
- ์ ๋ต์ ์ ๋ ฅ๋ฐ์ HashMap์ ์ ์ฅ
- ์์ฑํ ๋ต์์ ์ ๋ ฅ๋ฐ์ arr์ ์ ์ฅ
- arr์ ๋ชจ๋ ์์ ์ํ
: HashMap์์ value ๊ฐ์ ๊ฐ์ ธ์ ํฌ๊ธฐ๋ฅผ ๋น๊ตํ์ฌ ์๋์ ์ธ ๊ด๊ณ ํ๋จ
- ์ ๋ต(a/b) ์ถ๋ ฅ
'๐Algorithm > ๐ฅBaekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 2548_๋ํ ์์ฐ์ (0) | 2023.10.17 |
---|---|
[Baekjoon] 1946_์ ์ ์ฌ์ (1) | 2023.10.16 |
[Baekjoon] 1972_๋๋ผ์ด ๋ฌธ์์ด (0) | 2023.10.12 |
[Baekjoon] 5568_์นด๋ ๋๊ธฐ (0) | 2023.10.11 |
[Baekjoon] 11507_์นด๋์ ํธ (0) | 2023.10.10 |