ამოხსნების სტატუსი

ამ გვერდზე თქვენ იხილავთ გაგზავნილი ამოხსნების სტატუსს.


გაგზავნის თარიღი: 13.09.2021 14:29:54

ამოცანა: გუბურების დათვლა

მომხმარებელი: LukaBrazia

ვერდიქტი: ნაწილობრივი ამოხსნა

შეფასება: 50.0 ქულა







#include <vector>
#include <stdio.h>
#include <iostream>
#include <vector>
#include <queue>

using namespace std;

int main() {
	int rows, cols;
	scanf("%d %d", &rows, &cols);
	vector<vector<int>> grid(rows, vector<int>(cols, 0));
	for (int i = 0; i < rows; i++) {
		int j = 0;
		while (true) {
			char ch;
			scanf("%c", &ch);
			if (ch == '\n') break;
			if (ch == 'W') grid[i][j] = 1;
			j++;
		}
	}
	int puddles = 0;
	for (int i = 0; i < rows; i++) {
		for (int j = 0; j < cols; j++) {
			if (grid[i][j] == 0) continue;
			puddles++;
			grid[i][j] = 0;
			queue<pair<int, int>> que;
			que.push(make_pair(i, j));
			while (que.size() > 0) {
				int x = que.front().first;
				int y = que.front().second;
				que.pop();
				for (int n = -1; n <= 1; n++) {
					for (int k = -1; k <= 1; k++) {
						if (n == 0 && k == 0) continue;
						if (x + n < 0 || x + n >= rows) continue;
						if (y + k < 0 || y + k >= cols) continue;
						if (grid[x + n][y + k] == 1) {
							grid[x + n][y + k] = 0;
							que.push(make_pair(x + n, y + k));
						}
					}
				}
			}
		}
	}
	printf("%d", puddles);
	return 0;
}

ტესტები

შემავალი მონაცემები
10 12
W........WW.
.WWW.....WWW
....WW...WW.
.........WW.
.........W..
..W......W..
.W.W.....WW.
W.W.W.....W.
.W.W......W.
..W.......W.
გამომავალი მონაცემები
3
თქვენი პასუხი
3
ჩეკერის პასუხი
YES
შემავალი მონაცემები
4 4
....
....
....
....
გამომავალი მონაცემები
0
თქვენი პასუხი
0
ჩეკერის პასუხი
YES
შემავალი მონაცემები
1 1
W
გამომავალი მონაცემები
1
თქვენი პასუხი
0
ჩეკერის პასუხი
NO
შემავალი მონაცემები
20 20
W.W.W.W.W.W.W.W.W.W.
.W.W.W.W.W.W.W.W.W.W
W.W.W.W.W.W.W.W.W.W.
.W.W.W.W.W.W.W.W.W.W
W.W.W.W.W.W.W.W.W.W.
.W.W.W.W.W.W.W.W.W.W
W.W.W.W.W.W.W.W.W.W.
.W.W.W.W.W.W.W.W.W.W
W.W.W.W.W.W.W.W.W.W.
.W.W.W.W.W.W.W.W.W.W
W.W.W.W.W.W.W.W.W.W.
.W.W.W....
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES
შემავალი მონაცემები
12 20
....WWWW.......WW...
...WW..WW..WWWWW..W.
..WWW.....WW..WW..WW
..WW.....WWWWW.WW.WW
..W...W....W...W.W..
..W...W....WWW.W.W..
........WW.....W.W..
WWWWWW.W..W..WW..WW.
WWWWWW..WW..WW..WWWW
.....W..W..W....W...
WWW.WWW..W..W..W..WW
.WW..W....
გამომავალი მონაცემები
7
თქვენი პასუხი
7
ჩეკერის პასუხი
YES
შემავალი მონაცემები
30 30
...........W.W....W.W......WWW
..WWWW..WWW.....W.....W....W.W
..W.......W.......W.W.WW......
.W...WW.W.......W......WW.....
..WWW.............W......WW...
.W...W.......W..W.W.W.....W...
...WW..W..WWW...WW............
W........W.......W...W..W...
გამომავალი მონაცემები
46
თქვენი პასუხი
47
ჩეკერის პასუხი
NO
შემავალი მონაცემები
30 45
W....WW...WW.W....W.WW.....WWW..WWWWW.WWWW...
.WWWW..W....W.WW.WWW...W.W....W.WW.W.WW.....W
.W.W.WW.W....W..W.W...WWW.......WWW........W.
.W.W......WWW..WW...W....W..W.WW.W.W.....WW..
...WW..W.WWWW...WW............W.W...W..W.....
..W...W..W.W.W...
გამომავალი მონაცემები
38
თქვენი პასუხი
32
ჩეკერის პასუხი
NO
შემავალი მონაცემები
75 50
W....WW...WW.W....W.WW.....WWW..WWWWW.WWWW....WWWW
..W....W.WW.WWW...W.W....W.WW.W.WW.....W.W.W.WW.W.
...W..W.W...WWW.......WWW........W..W.W......WWW..
WW...W....W..W.WW.W.W.....WW.....WW..W.WWWW...WW..
..........W.W...W..W.......W...W..W.W.W.....
გამომავალი მონაცემები
73
თქვენი პასუხი
75
ჩეკერის პასუხი
NO
შემავალი მონაცემები
100 100
...........W.W..............W...WWW...WW............W.........W...............W.W..........W...W..W.
......W...............W.W....................W......................W.....................W......W..
...............................W..............
გამომავალი მონაცემები
648
თქვენი პასუხი
646
ჩეკერის პასუხი
NO
შემავალი მონაცემები
100 100
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW...
გამომავალი მონაცემები
1
თქვენი პასუხი
1
ჩეკერის პასუხი
YES