Submission #546672

#TimeUsernameProblemLanguageResultExecution timeMemory
546672AktanBitaro the Brave (JOI19_ho_t1)C++14
100 / 100
939 ms17808 KiB
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
template<class T>
using ordered_set = tree<T, null_type,less<T>, rb_tree_tag,tree_order_statistics_node_update>;
#define int long long
#define ft first
#define sc second
const int mod=1e9+7,INF=1e17,N=3005;

char s[N][N];
map<int,int> mp,mp1;
main(){
ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
	int n,m;
	cin >> n >> m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin >> s[i][j];
			if(s[i][j]=='O'){
				mp1[i]++;
			}
			if(s[i][j]=='I'){
				mp[j]++;
			}
		}
	}
	int ans=0;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(s[i][j]=='J'){
				ans+=(mp1[i]*mp[j]);
			}
			if(s[i][j]=='O'){
				mp1[i]--;
			}
			if(s[i][j]=='I'){
				mp[j]--;
			}
		}
	}
	cout << ans;
	
}



Compilation message (stderr)

joi2019_ho_t1.cpp:15:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   15 | main(){
      | ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...