Submission #73144682
Source Code Expand
Copy
#include <stdio.h>int m;int n;int hh[128][128]; /* haku hyou */int tiisakunaihou(int a, int b) {return a >= b ? a : b;}int idou(int y, int x) {int ans;if (hh[y][x] == 0) return 0;hh[y][x] = 0;ans = idou(y - 1, x);ans = tiisakunaihou(ans, idou(y + 1, x));ans = tiisakunaihou(ans, idou(y, x - 1));ans = tiisakunaihou(ans, idou(y, x + 1));hh[y][x] = 1;return ans + 1;}
#include <stdio.h>
int m;
int n;
int hh[128][128]; /* haku hyou */
int tiisakunaihou(int a, int b) {
return a >= b ? a : b;
}
int idou(int y, int x) {
int ans;
if (hh[y][x] == 0) return 0;
hh[y][x] = 0;
ans = idou(y - 1, x);
ans = tiisakunaihou(ans, idou(y + 1, x));
ans = tiisakunaihou(ans, idou(y, x - 1));
ans = tiisakunaihou(ans, idou(y, x + 1));
hh[y][x] = 1;
return ans + 1;
}
int main(void) {
int i, j;
int ans = 0;
if (scanf("%d", &m) != 1) return 1;
if (scanf("%d", &n) != 1) return 1;
for (i = 1; i <= n; i++) {
for (j = 1; j <= m; j++) {
if (scanf("%d", &hh[i][j]) != 1) return 1;
}
}
for (i = 1; i <= n; i++) {
for (j = 1; j <= m; j++) {
ans = tiisakunaihou(ans, idou(i, j));
}
}
printf("%d\n", ans);
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - 薄氷渡り |
| User | mikecat |
| Language | C23 (GCC 14.2.0) |
| Score | 100 |
| Code Size | 803 Byte |
| Status | AC |
| Exec Time | 2 ms |
| Memory | 1928 KiB |
Judge Result
| Set Name | set01 | set02 | set03 | set04 | set05 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 20 / 20 | 20 / 20 | 20 / 20 | 20 / 20 | 20 / 20 | ||||||||||
| Status |
|
|
|
|
|
| Set Name | Test Cases |
|---|---|
| set01 | data1 |
| set02 | data2 |
| set03 | data3 |
| set04 | data4 |
| set05 | data5 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| data1 | AC | 0 ms | 1652 KiB |
| data2 | AC | 0 ms | 1668 KiB |
| data3 | AC | 1 ms | 1928 KiB |
| data4 | AC | 1 ms | 1752 KiB |
| data5 | AC | 2 ms | 1764 KiB |