Submission #998284

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
9982842024-06-13 13:44:16doducanhOsmosmjerka (COCI17_osmosmjerka)C++14
160 / 160
1785 ms94852 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int mod=(1ll<<(61)-1);
int sub[505][505][31];
string s[505];
int n,m,k;
map<int,int>c;
int nn,mm;
void xuly(int dx,int dy)
{
int base=31;
for(int lo=1;lo<=30;lo++){
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
int ni=(i+dx*(1ll<<(lo-1))+nn)%n;
int nj=(j+dy*(1ll<<(lo-1))+mm)%m;
if(ni==0)ni=n;if(nj==0)nj=m;
sub[i][j][lo]=(sub[i][j][lo-1]*base%mod+sub[ni][nj][lo-1])%mod;
}
}
base=(base*base)%mod;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
int x=i,y=j;
int base=31;
int res=0;
for(int lo=30;lo>=0;lo--){
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

osmosmjerka.cpp:5:25: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
    5 | const int mod=(1ll<<(61)-1);
      |                     ~~~~^~
osmosmjerka.cpp: In function 'void xuly(long long int, long long int)':
osmosmjerka.cpp:19:17: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   19 |                 if(ni==0)ni=n;if(nj==0)nj=m;
      |                 ^~
osmosmjerka.cpp:19:31: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
   19 |                 if(ni==0)ni=n;if(nj==0)nj=m;
      |                               ^~
osmosmjerka.cpp: At global scope:
osmosmjerka.cpp:46:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   46 | main()
      | ^~~~
osmosmjerka.cpp: In function 'int main()':
osmosmjerka.cpp:67:14: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   67 |     for(auto [v,w]:c){
      |              ^
#Verdict Execution timeMemoryGrader output
Fetching results...