#include<bits/stdc++.h>
using namespace std;
#define int long long int
#define inf 1e15
#define endl '\n';
using pii = pair<int,int>;
using piii = pair<int,pii>;
using piiii = pair<pii,pii>;
int mod = 1e9+7;
int32_t main()
{
//freopen("file.in" , "r" , stdin);freopen("file.out" , "w" , stdout);
ios_base::sync_with_stdio(0);cin.tie(0);
int H, W;
cin >> H >> W;
vector<vector<char>> grid(H, vector<char>(W));
for (int i = 0; i < H; i++)
for (int j = 0; j < W; j++)
cin >> grid[i][j];
unordered_map<int, int> num_os;
int cnt = 0;
for (int i = 0; i < H; i++)
{
for (int j = 0; j < W; j++)
{
if (grid[i][j] == 'J')
{
for (int k = i + 1; k < H; k++)
{
if (grid[k][j] == 'I')
{
int key = (i * W) + j;
cnt += ++num_os[key];
}
if (grid[i][j] == 'J' && grid[k][j] == 'I')
{
int key = (i * W) + j;
num_os[key]++;
}
}
}
}
}
cout << cnt << endl;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
1 ms |
212 KB |
Output is correct |
3 |
Incorrect |
1 ms |
212 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
1 ms |
212 KB |
Output is correct |
3 |
Incorrect |
1 ms |
212 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
212 KB |
Output is correct |
2 |
Correct |
1 ms |
212 KB |
Output is correct |
3 |
Incorrect |
1 ms |
212 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |