Submission #103747

#TimeUsernameProblemLanguageResultExecution timeMemory
103747MohamedAhmed0Bob (COCI14_bob)C++14
72 / 120
1076 ms8204 KiB
#include <bits/stdc++.h> using namespace std; #pragma GCC target ("avx2") #pragma GCC optimization ("O3") #pragma GCC optimization ("unroll-loops") int main() { int n , m ; scanf("%d %d" , &n , &m) ; int arr[n][m] , last[n][m]; for(int i = 0 ; i < n ; ++i) { for(int j = 0 ; j < m ; ++j) scanf("%d" , &arr[i][j]) ; } for(int i = 0 ; i < n ; ++i) { last[i][m-1] = m-1 ; for(int j = m-2 ; j >= 0 ; --j) { if(arr[i][j] == arr[i][j+1]) last[i][j] = last[i][j+1] ; else last[i][j] = j ; } } long long ans = 0ll ; for(int i = 0 ; i < n ; ++i) { for(int j = 0 ; j < m ; ++j) { long long MIN = 1e9 ; for(int k = i ; k >= 0 ; --k) { if(arr[i][j] != arr[k][j]) break; MIN = min(MIN , last[k][j] - j + 1ll) ; ans += (MIN*1ll) ; } } } return printf("%lld" , ans) , 0 ; }

Compilation message (stderr)

bob.cpp:5:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization ("O3")
 
bob.cpp:6:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization ("unroll-loops")
 
bob.cpp: In function 'int main()':
bob.cpp:11:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d" , &n , &m) ;
     ~~~~~^~~~~~~~~~~~~~~~~~~
bob.cpp:16:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
             scanf("%d" , &arr[i][j]) ;
             ~~~~~^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...