This documentation is automatically generated by online-judge-tools/verification-helper
View the Project on GitHub beet-aizu/library
// verification-helper: PROBLEM http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1312 #include <bits/stdc++.h> using namespace std; #define call_from_test #include "../../string/rollinghash.cpp" #include "../../string/rectanglehash.cpp" #undef call_from_test int conv(char c){ if(isupper(c)) return c-'A'; if(islower(c)) return 26+c-'a'; if(isdigit(c)) return 52+c-'0'; if(c=='+') return 62; if(c=='/') return 63; assert(0); } vector<string> decode(vector<string> vs,int h,int w){ vector<string> rs(h,string(w,'$')); for(int i=0;i<h;i++) for(int j=0;j<(int)vs[i].size();j++) for(int k=0;k<6&&j*6+k<w;k++) rs[i][j*6+k]=char('0'+((conv(vs[i][j])>>(5-k))&1)); return rs; } signed main(){ cin.tie(0); ios::sync_with_stdio(0); int w,h,p; while(cin>>w>>h>>p,w){ vector<string> ss(h); for(int i=0;i<h;i++) cin>>ss[i]; vector<string> ts(p); for(int i=0;i<p;i++) cin>>ts[i]; const int MOD = 1e9+7; const int B1 = 1777771; const int B2 = 1e8+7; auto srh=rectangle_hash<int, MOD, B1, B2>(decode(ss,h,w),p,p); vector< vector<int> > found(h,vector<int>(w,0)); auto pat=decode(ts,p,p); for(int rev=0;rev<2;rev++){ for(int rot=0;rot<4;rot++){ auto tmp(pat); for(int i=0;i<p;i++) for(int j=0;j<p;j++) pat[i][j]=tmp[j][p-(i+1)]; auto val=rectangle_hash<int, MOD, B1, B2>(pat,p,p)[0][0]; for(int i=0;i<h-p+1;i++) for(int j=0;j<w-p+1;j++) if(srh[i][j]==val) found[i][j]=1; } for(auto &s:pat) reverse(s.begin(),s.end()); } int cnt=0; for(int i=0;i<h-p+1;i++) for(int j=0;j<w-p+1;j++) if(found[i][j]) cnt++; cout<<cnt<<"\n"; } cout<<flush; return 0; }
Traceback (most recent call last): File "/opt/hostedtoolcache/Python/3.11.3/x64/lib/python3.11/site-packages/onlinejudge_verify/documentation/build.py", line 71, in _render_source_code_stat bundled_code = language.bundle(stat.path, basedir=basedir, options={'include_paths': [basedir]}).decode() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/hostedtoolcache/Python/3.11.3/x64/lib/python3.11/site-packages/onlinejudge_verify/languages/cplusplus.py", line 187, in bundle bundler.update(path) File "/opt/hostedtoolcache/Python/3.11.3/x64/lib/python3.11/site-packages/onlinejudge_verify/languages/cplusplus_bundle.py", line 401, in update self.update(self._resolve(pathlib.Path(included), included_from=path)) File "/opt/hostedtoolcache/Python/3.11.3/x64/lib/python3.11/site-packages/onlinejudge_verify/languages/cplusplus_bundle.py", line 400, in update raise BundleErrorAt(path, i + 1, "unable to process #include in #if / #ifdef / #ifndef other than include guards") onlinejudge_verify.languages.cplusplus_bundle.BundleErrorAt: string/rectanglehash.cpp: line 6: unable to process #include in #if / #ifdef / #ifndef other than include guards