This documentation is automatically generated by online-judge-tools/verification-helper
#ifndef call_from_test
#include<bits/stdc++.h>
using namespace std;
#define call_from_test
#include "rollinghash.cpp"
#undef call_from_test
#endif
//BEGIN CUT HERE
template<typename T,T MOD,T B1,T B2>
auto rectangle_hash(vector<string> vs,int r,int c){
vector< RollingHash<T, MOD, B1> > hs;
for(string s:vs) hs.emplace_back(s);
int h=vs.size(),w=vs[0].size();
vector< vector<T> > res(h-r+1,vector<T>(w-c+1));
for(int j=0;j+c<=w;j++){
vector<T> ts(h);
for(int i=0;i<h;i++)
ts[i]=hs[i].find(j,j+c);
RollingHash<T, MOD, B2> rh(ts);
for(int i=0;i+r<=h;i++)
res[i][j]=rh.find(i,i+r);
}
return res;
}
//END CUT HERE
#ifndef call_from_test
signed main(){
return 0;
}
#endif
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 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