Submission #7067778
Source Code Expand
#include "manacher.hpp" int main() { int M, N; scanf("%d%d", &M, &N); std::vector<int> row(2 * M - 1), column(2 * N - 1); for (int i{1}; i < 2 * M - 1; i += 2) row[i] = -1; for (int i{1}; i < 2 * N - 1; i += 2) column[i] = -1; for (int i{}; i < 2 * M - 1; i += 2) for (int j{}; j < 2 * N - 1; j += 2) { char tmp; scanf(" %c", &tmp); if (tmp == '1') { row[i]++; column[j]++; } } std::vector<int> rowRot(manacher(row)), columnRot(manacher(column)); int64_t row_count{}, column_count{}; for (int border{1}; border < (int)rowRot.size(); border += 2) { int top{(border + -1) / 2}, bottom{(border + (int)rowRot.size()) / 2}; if (top - rowRot[top] == -1 && bottom + rowRot[bottom] == (int)rowRot.size()) row_count++; } for (int border{1}; border < (int)columnRot.size(); border += 2) { int left{(border + -1) / 2}, right{(border + (int)columnRot.size()) / 2}; if (left - columnRot[left] == -1 && right + columnRot[right] == (int)columnRot.size()) column_count++; } printf("%lld\n", row_count * column_count); return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Artist |
User | TanakaTaroh |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1117 Byte |
Status | CE |
Compile Error
./Main.cpp:1:24: fatal error: manacher.hpp: No such file or directory #include "manacher.hpp" ^ compilation terminated.