λ¬Έμ
μΌλ§ μ GPTμ μ€μ λΉκ΅ λ°©μμ΄ νμ κ° λ μ μ΄ μμλ€.
μ§λ¬Έ) "3.9μ 3.11 μ€μ λκ° λ 컀?" / λ΅λ³) "3.11μ΄ λ ν½λλ€."
μν μκ°μ μ‘Έμ§ μμ μ¬λλ€μ κ° λ³΄λ€ ν¬λ€κ³ μκ°νμ§λ§, GPTμ λμΌλ‘ 보면 Python 3.9μ Python 3.11 μ€ νμλ₯Ό λ ν¬κ² 보λ νμ΅ λ°μ΄ν°κ° λ§μ μ λ κ² μκ°ν μ μλ€. GPTμ μΈμμμ 3.1μ 3λ³΄λ€ ν¬κ³ , λ§μ°¬κ°μ§λ‘ 3.9λ 3.2λ³΄λ€ ν¬μ§λ§, 3.10μ 3.2λ³΄λ€ ν° κ°μΌλ‘ μ²λ¦¬λλ€.
ꡬ체μ μΌλ‘, μμμ μ κΈ°μ€μΌλ‘ μΌμͺ½μ μλ‘ μ½μ κ°μ , μ€λ₯Έμͺ½μ μλ‘ μ½μ κ°μ λΌκ³ ν λ λ μμ λΉκ΅κ° λ€μκ³Ό κ°μ΄ μ΄λ£¨μ΄μ§λ€:
- κ°μ΄ λ μμΌλ©΄ λ μμ μμ΄λ€.
- κ°μ΄ κ°μ κ²½μ° κ°μ΄ λ μμΌλ©΄ λ μμ μμ΄λ€.
- μμμ μ΄ μλ κ²½μ°λ κ°μ μμ μμμ μ΄ μλ κ²½μ°λ³΄λ€ νμ μκ² μ·¨κΈλλ€. (λ€μ λ§ν΄, GPTμκ² 3μ 3.0λ³΄λ€ μλ€.)
κ°μ μλ€μ΄ μ£Όμ΄μ‘μ λ, μ΄λ₯Ό GPTμ κΈ°μ€μ λ°λΌ λΉλ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬ν΄λ³΄μ.
μ μ½μ‘°κ±΄
[λ¬Έμ μ μ½ μ‘°κ±΄]
[쑰건 1] μ μ΄μ μ΄νμ΄λ€.
[쑰건 2] κ° μλ μ€μ νΉμ μ μλ‘ ννλκ³ , μ΄μ μ΄νμ΄λ©°, μμμ μ΄ μκ±°λ μμμ μλ μ΅λ 3μ리κΉμ§ μ£Όμ΄μ§λ€.
[μλΈ νμ€ν¬λ³ μ μ½ μ‘°κ±΄]
λ³λμ μλΈ νμ€ν¬κ° μ‘΄μ¬νμ§ μμ΅λλ€.
μ λ ₯νμ
첫 λ²μ§Έ μ€μ μ΄ μ£Όμ΄μ§λ€.
λ λ²μ§Έ μ€λΆν° κ°μ μ€μ κ±Έμ³, κ° μκ° ν μ€μ νλμ© μ£Όμ΄μ§λ€.
01.23, 3.001κ³Ό κ°μ΄ μμμ μ κΈ°μ€μΌλ‘ κ° ννΈμ μ΄ μλ μ μ΄μ μ leading zeroκ° λμ€λ κ²½μ°λ μ£Όμ΄μ§μ§ μλλ€.
μΆκ°λ‘, 3.00, 3.000, λλ 00.1κ³Ό κ°μ΄ μμμ μ κΈ°μ€μΌλ‘ ν ννΈμ λ κ° μ΄μμ 0λ§ μ£Όμ΄μ§λ μ λ ₯μ μλ€.
μΆλ ₯νμ
첫 λ²μ§Έ μ€λΆν° κ°μ μ€μ κ±Έμ³, μ λ ₯μΌλ‘ μ£Όμ΄μ§ μλ€μ GPTμ κΈ°μ€μΌλ‘ λΉλ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬ν μμλλ‘ ν μ€μ νλμ© μΆλ ₯νλ€.
μμ
5 1.2 1.11 2.9 4.2 3
1.2 1.11 2.9 3 4.2
1.2μ 1.11μ μμμ μ μν΄ μΆλ ₯νλ©΄ λλ€.
8 1 1.0 2.0 2.10 2.1 2.100 1.11 1.3
1 1.0 1.3 1.11 2.0 2.1 2.10 2.100
νμ΄
μ μ ν κ³μ°μ μ΄μ©ν λ°°μ΄μ μ λ ¬ λ¬Έμ
μμ«μ μ κΈ°μ€μΌλ‘ μμ리 μ μμ λ·μ리 μ μλ₯Ό λΉκ΅νλ€.
μλ°μ λ°°μ΄μμμ sortν¨μμ μκ°λ³΅μ‘λλ O(nlogn)μΌλ‘ μ λ ₯κ° Nμ μ΅λκ°μΈ 1,000μ΄ λ€μ΄μλ 1μ΄ μμ μ λ ¬ κ°λ₯
μ½λ
import java.io.*;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
ArrayList<String> arr = new ArrayList<>();
// μ
λ ₯κ° λ°κΈ°
int N = Integer.parseInt(br.readLine());
for(int i=0; i < N; i++){
arr.add(br.readLine());
}
// λλ€ν¨μλ‘ μ λ ¬ μ μ
Collections.sort(arr, (first, second) -> {
String[] a1 = first.split("\\.");
String[] a2 = second.split("\\.");
// μμ리 μ μλΉκ΅
int r1 = Integer.parseInt(a1[0]) - Integer.parseInt(a2[0]);
// μμ리 μ μκ° κ°μ§ μλ€λ©΄, κ²°κ³Ό 리ν΄νμ¬ μ λ ¬
if(r1 != 0){
return r1;
}
// λ·μ리 μ μλΉκ΅
// μμ«μ μ΄ μλ κ°κ³Ό μμ«μ μ΄ν κ°μ΄ 0μΈ κ°μ λΉκ΅νκΈ° μν΄μ μλ€λ©΄, -1μ²λ¦¬
int n1 = a1.length < 2 ? -1 : Integer.parseInt(a1[1]);
int n2 = a2.length < 2 ? -1 : Integer.parseInt(a2[1]);
return n1 - n2;
});
// μΆλ ₯κ° μΈν
for(String item : arr) {
sb.append(item).append("\n");
}
System.out.println(sb.toString());
br.close();
}
}
'Programming > Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] μλ°μ μ΄μ§ μ°μ°(λΉνΈ μ°μ°) (0) | 2025.04.06 |
---|---|
[Kotlin] λ°±μ€ 2504 κ΄νΈμ κ° μ½νλ¦° νμ΄ - stack (0) | 2025.03.31 |
[Kotlin] λ°±μ€ 14888 - μ°μ°μ λΌμλ£κΈ°(μ¬κ·μμ νμ DFS, λ°±νΈλνΉ) (1) | 2025.03.09 |
[Kotlin] λ°±μ€ 1978 μμ μ°ΎκΈ° (1) | 2025.03.08 |
[Kotlin] λ°±μ€ 1292 - μ½κ² νΈλ λ¬Έμ (1) | 2024.11.13 |