-
[C++] μ§μ¬κ°ν μ’ν ꡬνκΈ°μ½λ©ν μ€νΈ/μ½λ©ν μ€νΈ μ°μ΅ 2019. 5. 6. 20:46728x90
λ¬Έμ μ€λͺ
μ§μ¬κ°νμ λ§λλ λ° νμν 4κ°μ μ μ€ 3κ°μ μ’νκ° μ£Όμ΄μ§ λ, λλ¨Έμ§ ν μ μ μ’νλ₯Ό ꡬνλ €κ³ ν©λλ€. μ 3κ°μ μ’νκ° λ€μ΄μλ λ°°μ΄ vκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, μ§μ¬κ°νμ λ§λλ λ° νμν λλ¨Έμ§ ν μ μ μ’νλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ. λ¨, μ§μ¬κ°νμ κ° λ³μ xμΆ, yμΆμ νννλ©°, λ°λμ μ§μ¬κ°νμ λ§λ€ μ μλ κ²½μ°λ§ μ λ ₯μΌλ‘ μ£Όμ΄μ§λλ€.
μ νμ¬ν
- vλ μΈ μ μ μ’νκ° λ€μ΄μλ 2μ°¨μ λ°°μ΄μ λλ€.
- vμ κ° μμλ μ μ μ’νλ₯Ό λνλ΄λ©°, μ’νλ [xμΆ μ’ν, yμΆ μ’ν] μμΌλ‘ μ£Όμ΄μ§λλ€.
- μ’νκ°μ 1 μ΄μ 10μ΅ μ΄νμ μμ°μμ λλ€.
- μ§μ¬κ°νμ λ§λλ λ° νμν λλ¨Έμ§ ν μ μ μ’νλ₯Ό [xμΆ μ’ν, yμΆ μ’ν] μμΌλ‘ λ΄μ return ν΄μ£ΌμΈμ.
μ μΆλ ₯ μ
v result [[1, 4], [3, 4], [3, 10]] [1, 10] [[1, 1], [2, 2], [1, 2]] [2, 1] μ μΆλ ₯ μ #1
μΈ μ μ΄ [1, 4], [3, 4], [3, 10] μμΉμ μμ λ, [1, 10]μ μ μ΄ μμΉνλ©΄ μ§μ¬κ°νμ΄ λ©λλ€.μ μΆλ ₯ μ #2
μΈ μ μ΄ [1, 1], [2, 2], [1, 2] μμΉμ μμ λ, [2, 1]μ μ μ΄ μμΉνλ©΄ μ§μ¬κ°νμ΄ λ©λλ€.#include <iostream> #include <vector> using namespace std; vector<int> solution(vector<vector<int> > v) { vector<int> ans; int x, y; ans.assign(2, 0); if (v[0][0] == v[1][0]) x = v[2][0]; else if (v[0][0] == v[2][0]) x = v[1][0]; else if (v[1][0] == v[2][0]) x = v[0][0]; if (v[0][1] == v[1][1]) y = v[2][1]; else if (v[0][1] == v[2][1]) y = v[1][1]; else if (v[1][1] == v[2][1]) y = v[0][1]; ans[0] = x; ans[1] = y; return ans; }
- μ’λ μ 리 ν΄λ³΄λ©΄
#include <iostream> #include <vector> using namespace std; vector<int> solution(vector<vector<int> > v) { vector<int> ans(2,0); int *coordinate = new int[2]; for (int i = 0; i < 2; i++){ if (v[0][i] == v[1][i]) coordinate[i] = v[2][i]; else if (v[0][i] == v[2][i]) coordinate[i] = v[1][i]; else if (v[1][i] == v[2][i]) coordinate[i] = v[0][i]; } for(int j=0; j< 2; j++) ans[j] = coordinate[j]; return ans; } void main() { vector<vector<int> > problem(3, vector<int>(2,0)); // >>λ₯Ό λΆμ¬μ°λ©΄ μ¬ννΈ μ°μ°μλ‘ μΈμν μ μμ vector<int> ans; problem[0][0] = 1; problem[0][1] = 4; problem[1][0] = 3; problem[1][1] = 4; problem[2][0] = 3; problem[2][1] = 10; ans = solution(problem); cout << "[" << ans[0] << ", " << ans[1] << "]" << endl; }
- μ¬μ΄ λ¬Έμ μ§λ§ 벑ν°κ° μ£Όμ΄μ§ λ§νΌ μ΄λ₯Ό μ¬μ©ν΄μ λ ν¨μ¨μ μΌλ‘ μ½λλ₯Ό μ§λ λ°©λ²μ΄ μμ§ μμκΉ?
- vector containerμ λν΄ μ 리ν νμμ±μ λκΌλ€.
μ§κΈμ΄λΌλ©΄ μ΄λ κ² νκ±° κ°μλ° XOR λ°©μλ³΄λ€ λ μ’μ보μ΄μ§λ μλλ€(20210909)
#include <iostream> #include <vector> #include <map> using namespace std; vector<int> solution(vector<vector<int> > v) { vector<int> ans; map<int, int> coord_x; map<int, int> coord_y; for (auto coord : v) { coord_x[coord[0]] == 0 ? coord_x[coord[0]]++ : coord_x[coord[0]]--; coord_y[coord[1]] == 0 ? coord_y[coord[1]]++ : coord_y[coord[1]]--; } for (auto x : coord_x) { if(x.second != 0) { ans.push_back(x.first); } } for (auto y : coord_y) { if(y.second != 0) { ans.push_back(y.first); } } return ans; }
728x90'μ½λ©ν μ€νΈ > μ½λ©ν μ€νΈ μ°μ΅' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[C++] Kλ²μ§Έμ (0) 2019.09.21 [C++] λ² μ€νΈμ¨λ² (0) 2019.09.21 [C++] μμ₯ (0) 2019.09.20 [C++] μ νλ²νΈ λͺ©λ‘ (0) 2019.09.20 [C++] μμ£Όνμ§ λͺ»ν μ μ (0) 2019.09.20