# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
70306 | 2018-08-22T14:57:46 Z | Just_Solve_The_Problem | Broken Device (JOI17_broken_device) | C++11 | 0 ms | 0 KB |
#include <bits/stdc++.h> #include "Brunolib.h" //#include "grader.cpp" #define ll long long #define pb push_back using namespace std; pair < int, int > get(int x, int y, int z) { int t = x * 4 + y * 2 + z; if (t == 0) return {0, 1}; if (t == 1) return {0, 2}; if (t == 2) return {1, 4}; if (t == 3) return {3, 4}; if (t == 4) return {1, 2}; if (t == 5) return {1, 4}; if (t == 6) return {0, 2}; if (t == 7) return {0, 4}; } long long Bruno( int N, int A[] ){ ll ret = 0; for (int i = N - 3; i >= 0; i -= 3) { ret = ret * get(A[i], A[i + 1], A[i + 2]).second + get(A[i], A[i + 1], A[i + 2]).first; } return ret; }