λ¬Έμ
체μ€μμ 룩μ΄λΌλ κΈ°λ¬Όμ λ§νμμ§λ§ μμΌλ©΄ 룩μ μμΉμμ κ°μ ν, κ°μ μ΄μ ν΄λΉνλ μΉΈ μ€ νλλ‘ ν λ² μ΄λν μ μλ€. λ¨, νΉμ μΉΈμ΄ λ§νμλ€λ©΄ κ·Έ μΉΈμμλΆν° λ λμκ° μλ μλ€. λ§μ½ λ£©μ΄ μλ κ·Έλ¦Όκ³Ό κ°μ΄ 5ν 4μ΄μ μ‘΄μ¬νκ³ κ°μ νμ΄μ κΈ°λ¬Όμ΄ μλ€λ©΄ 5νμ΄λ 4μ΄μ μ‘΄μ¬νλ μΉΈ μ€ μ΄λλ‘λ κ° μ μλ€. μλ₯Ό λ€μ΄, 5ν 2μ΄ νΉμ 1ν 4μ΄λ‘ μμ§μΌ μ μλ€. μ°¨λ‘μ μ£Όμ΄μ§ μ΄λ νμλ ν λ²μ΄λ―λ‘ μ΄λμ΄ μλ£λμλ€λ©΄ μλλ°©μ μ°¨λ‘λ‘ λμ΄κ°λ€.
체μ€λ νΉλ§ μ‘νλ©΄ μ§κ² λλ κ²μμ΄λ€. κ·Έ μ€μμλ μλ©μ΄λ 룩μΌλ‘ μΈν΄ κ²μμ μ§λ κ²μ κ·Ήλλ‘ μ«μ΄νλ€!
μ£Όμ΄μ§ 체μ€νμ μνμμ νμ¬ μ°¨λ‘κ° μλμ μ°¨λ‘μΌ λ, μ΄λ² μ°¨λ‘μ μλ©μ΄μ νΉμ΄ μλλ°©μ 룩μκ² μ‘ν κ°λ₯μ±μ΄ μλμ§ μμ보μ.
μ λ ₯
8μ€μ κ±Έμ³ 8x8 체μ€νμ μνκ° μ£Όμ΄μ§λ€. μ΄λ 0μ κΈ°λ¬Όμ΄ μλ μνμ΄κ³ , 1μ μλ©μ΄μ νΉμ μλ―Ένκ³ , 2λ μλμ 룩μ μλ―Ένλ©° 3μ κ·Έ μΈ λ€λ₯Έ κΈ°λ¬Όλ€μ μλ―Ένλ€. (νΉμ νλλ§ μ‘΄μ¬νλ©°, μλμ 룩μ μ΅λ 2κ°κΉμ§ μμ μ μλ€. κ·Έ μΈ κΈ°λ¬Όλ€μ μ΅λ 29κ°κΉμ§ μμ μ μλ€.)
μΆλ ₯
νΉμ΄ 룩μκ² μ‘ν κ°λ₯μ±μ΄ μμΌλ©΄ 1, μλλ©΄ 0μ μΆλ ₯νλ€.
#include <iostream>
#include <vector>
using namespace std;
typedef struct loc {
int x;
int y;
}loc;
int main() {
vector< vector<int> > arr(8, vector<int>(8, 0));
loc king;
loc look;
vector<loc> kimul;
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
cin >> arr[i][j];
if (arr[i][j] == 1) {
king.x = i;
king.y = j;
}
else if (arr[i][j] == 2) {
look.x = i;
look.y = j;
}
else if (arr[i][j] == 3) {
loc tmp;
tmp.x = i;
tmp.y = j;
kimul.push_back(tmp);
}
}
}
if (king.x == look.x) {
int max, min;
if (king.y > look.y){
max = king.y;
min = look.y;
}
else {
max = look.y;
min = king.y;
}
for (int i = 0; i < kimul.size(); i++) {
if (kimul[i].x == king.x && (kimul[i].y > min && kimul[i].y < max)) {
cout << 0 << endl;
return 0;
}
}
}
else if (king.y == look.y) {
int max, min;
if (king.x > look.x) {
max = king.x;
min = look.x;
}
else {
max = look.x;
min = king.x;
}
for (int i = 0; i < kimul.size(); i++) {
if (kimul[i].y == king.y && (kimul[i].x > min && kimul[i].x < max)) {
cout << 0 << endl;
return 0;
}
}
}
else {
cout << 0 << endl;
return 0;
}
cout << 1 << endl;
return 0;
}
μμ νμμΌλ‘ ν΄κ²°ν μ μλ λ¬Έμ μ λλ€. 격μνμ μ λ ₯ λ°μΌλ©΄μ νΉ, 룩, κΈ°λ¬Όλ€μ μ’νλ€μ μ μ₯ν©λλ€.
νΉκ³Ό 룩μ x λλ yκ° κ°λ€λ κ²μ μ°μ λ£©μ΄ νΉμ μ μν μ μλ κ°λ₯μ±μ΄ μμ΅λλ€. κ°μ§ μμ κ²½μ°λ 0μ μΆλ ₯ν©λλ€.
λ§μ½ κ°λ€λ©΄, κ·Έ μ¬μ΄μ κΈ°λ¬Όμ΄ μλμ§ νμνμ¬ κΈ°λ¬Όμ΄ μλ€λ©΄ 0, μλ€λ©΄ νμ λ°λ³΅λ¬Έμ νμΆνμ¬ 1μ μΆλ ₯ν©λλ€.
'π Algorithm > Solved' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 2941 ν¬λ‘μν°μ μνλ²³ (νμ΄μ¬3 Python3) (0) | 2020.10.02 |
---|---|
[λ°±μ€] 4673 μ ν λλ² (νμ΄μ¬3 Python3) (0) | 2020.10.02 |
[μκ³ λ¦¬μ¦ μ‘μ€] max of arr (C++, μμ νμ) (0) | 2020.07.09 |
[μκ³ λ¦¬μ¦ μ‘μ€] GCD LCM(μ΅λ곡μ½μ μ΅μ곡배μ) (C++, μμ νμ) (0) | 2020.07.09 |
[μκ³ λ¦¬μ¦ μ‘μ€] μμ κΎΈλ―ΈκΈ° (C++, μμ νμ) (0) | 2020.07.09 |