β λΆλ₯
κΈ°νν, ꡬν, μν
π λ¬Έμ μ€λͺ
μ골μ μλ νμμ΄μ μΌμ΄ λμλ 컀λ€λ μ°ΈμΈλ°μ΄ μλ€. λ¬Έλ νμμ΄λ μ΄ λ°μμ μλΌλ μ°ΈμΈκ° λλ체 λͺ κ°λ λλμ§ κΆκΈν΄μ‘λ€. μ΄λ»κ² μμλΌ μ μλμ§ κ³¨λν μκ°νλ€κ° λλμ΄ μ’μ μμ΄λμ΄κ° λ μ¬λλ€. μ λ μΉ΄! 1m2μ λμ΄μ μλΌλ μ°ΈμΈ κ°μλ₯Ό ν€μλ¦° λ€μ, μ°ΈμΈλ°μ λμ΄λ₯Ό ꡬνλ©΄ λΉλ‘μμ μ΄μ©νμ¬ μ°ΈμΈμ μ΄κ°μλ₯Ό ꡬν μ μλ€.
1m2μ λμ΄μ μλΌλ μ°ΈμΈμ κ°μλ ν€μλ Έκ³ , μ΄μ μ°ΈμΈλ°μ λμ΄λ§ ꡬνλ©΄ λλ€. μ°ΈμΈλ°μ γ±-μ λͺ¨μμ΄κ±°λ γ±-μλ₯Ό 90λ, 180λ, 270λ νμ ν λͺ¨μ(β, β, β λͺ¨μ)μ μ‘κ°νμ΄λ€. λ€ννλ λ°μ κ²½κ³(μ‘κ°νμ λ³)λ λͺ¨λ λμ λ°©ν₯μ΄κ±°λ λ¨λΆ λ°©ν₯μ΄μλ€. λ°μ ν λͺ¨νμ΄μμ μΆλ°νμ¬ λ°μ λλ λ₯Ό λλ©΄μ λ°κ²½κ³ κΈΈμ΄λ₯Ό λͺ¨λ μΈ‘μ νμλ€.
μλ₯Ό λ€μ΄ μ°ΈμΈλ°μ΄ μ κ·Έλ¦Όκ³Ό κ°μ λͺ¨μμ΄λΌκ³ νμ. κ·Έλ¦Όμμ μ€λ₯Έμͺ½μ λμͺ½, μΌμͺ½μ μμͺ½, μλμͺ½μ λ¨μͺ½, μμͺ½μ λΆμͺ½μ΄λ€. μ΄ κ·Έλ¦Όμ μΌμͺ½μ κΌμ§μ μμ μΆλ°νμ¬, λ°μκ³λ°©ν₯μΌλ‘ λ¨μͺ½μΌλ‘ 30m, λμͺ½μΌλ‘ 60m, λ¨μͺ½μΌλ‘ 20m, λμͺ½μΌλ‘ 100m, λΆμͺ½μΌλ‘ 50m, μμͺ½μΌλ‘ 160m μ΄λνλ©΄ λ€μ μΆλ°μ μΌλ‘ λλμκ°κ² λλ€.
μ κ·Έλ¦Όμ μ°ΈμΈλ° λ©΄μ μ 6800m2μ΄λ€. λ§μ½ 1m2μ λμ΄μ μλΌλ μ°ΈμΈμ κ°μκ° 7μ΄λΌλ©΄, μ΄ λ°μμ μλΌλ μ°ΈμΈμ κ°μλ 47600μΌλ‘ κ³μ°λλ€.
1m2μ λμ΄μ μλΌλ μ°ΈμΈμ κ°μμ, μ°ΈμΈλ°μ μ΄λ£¨λ μ‘κ°νμ μμμ ν κΌμ§μ μμ μΆλ°νμ¬ λ°μκ³λ°©ν₯μΌλ‘ λλ λ₯Ό λλ©΄μ μ§λλ λ³μ λ°©ν₯κ³Ό κΈΈμ΄κ° μμλλ‘ μ£Όμ΄μ§λ€. μ΄ μ°ΈμΈλ°μμ μλΌλ μ°ΈμΈμ μλ₯Ό ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
β¨ μ λ ₯
첫 λ²μ§Έ μ€μ 1m2μ λμ΄μ μλΌλ μ°ΈμΈμ κ°μλ₯Ό λνλ΄λ μμ μ μ K (1 ≤ K ≤ 20)κ° μ£Όμ΄μ§λ€. μ°ΈμΈλ°μ λνλ΄λ μ‘κ°νμ μμμ ν κΌμ§μ μμ μΆλ°νμ¬ λ°μκ³λ°©ν₯μΌλ‘ λλ λ₯Ό λλ©΄μ μ§λλ λ³μ λ°©ν₯κ³Ό κΈΈμ΄ (1 μ΄μ 500 μ΄νμ μ μ) κ° λμ§Έ μ€λΆν° μΌκ³± λ²μ§Έ μ€κΉμ§ ν μ€μ νλμ© μμλλ‘ μ£Όμ΄μ§λ€. λ³μ λ°©ν₯μμ λμͺ½μ 1, μμͺ½μ 2, λ¨μͺ½μ 3, λΆμͺ½μ 4λ‘ λνλΈλ€.
π₯ μΆλ ₯
첫째 μ€μ μ λ ₯μΌλ‘ μ£Όμ΄μ§ λ°μμ μλΌλ μ°ΈμΈμ μλ₯Ό μΆλ ₯νλ€.
π λ¬Έμ νμ΄
- λ€μ 보λκΉ μ’ μ κΈ°νκ² νΌ κ² κ°λ€. γ γ γ
- μ 체μ μΈ λ Όλ¦¬λ μμ μ¬κ°νκ³Ό ν° μ¬κ°νμ μ°Ύμλ΄μ λμ΄λ₯Ό λΉΌμ£Όλ κ²μ΄λ€.
- μμ μ¬κ°νμ μ°ΎκΈ° μν λ‘μ§λ§ ꡬν μ μλ€λ©΄ κΈλ°© ν μ μμ κ² κ°λ€.
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));
StringTokenizer st;
int N = Integer.parseInt(br.readLine()); // 1μ κ³±λ―Έν° λΉ μ°ΈμΈ κ°μ
int[] d = new int[6]; // λ°©ν₯ λ°°μ΄
int[] l = new int[6]; // κΈΈμ΄ λ°°μ΄
int smallArea = 0; // μμ μ¬κ°ν
int[] countClock = {2, 3, 1, 4}; // λ°μκ³ λ°©ν₯
for(int i = 0; i < 6; i++) {
st = new StringTokenizer(br.readLine());
d[i] = Integer.parseInt(st.nextToken());
l[i] = Integer.parseInt(st.nextToken());
}
int comp;
for(int i = 0; i < 5; i++) {
for(int j = 0; j < 4; j++) {
if(j ==3) comp = 2; // λ°μκ³ λ°°μ΄μ λ§μ§λ§ κ°μ΄λ©΄, λΉκ΅κ°μ 2λ‘ μ€μ (λͺ¨λ νμ)
else comp = countClock[j+1]; // λ§μ§λ§ κ°μ΄ μλλ©΄, λ€μκ°μΌλ‘ λΉκ΅
if(d[i] == countClock[j] && d[i+1] !=comp) { // λ°μκ³λ‘ λκ³ μμ§ μλ€λ©΄ ?
smallArea = l[i] * l[i+1];
}
}
}
// λͺ¨λ νμν΄λ μμ μ¬κ°νμ λ©΄μ μ΄ κ΅¬ν΄μ§μ§ μμΌλ©΄ λ°°μ΄μ 첫 κ°κ³Ό λκ°μΌλ‘ ꡬνκΈ°
if (smallArea == 0) {
smallArea = l[0] * l[5];
}
// ν° μ¬κ°νμ λ©΄μ μ λ°©ν₯ λ°°μ΄μμ νλ²μ© λμ¨ κ°μ κ³±ν΄μ€λ€.
int bigArea = 1;
int count[] = new int[6];
for(int i =0; i < 6; i++) {
count[d[i]]++;
}
for(int i =0; i < 6; i++) {
if(count[d[i]] == 1) bigArea *= l[i];
}
System.out.println((bigArea - smallArea)*N);
}
}