인프런 커뮤니티 질문&답변

박정호님의 프로필 이미지
박정호

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

맞왜틀팁 : 반례를 생각하는 방법 | 2 - C 보완설명

2-C 문제 저는 왜 런타임 에러가 날까요..

작성

·

253

0

안녕하십니까 항상 잘보고있습니다!!

2-C문제를 풀면서 큰돌님과 똑같이 답안을 작성하였는데, 저는 왜 런타임 에러가 날까요.. 흑흑 분명 똑같은데 .. 몇번이고 비교해봤는데 뭐가 다른지 모르겠네요 ㅠㅠ

#include<bits/stdc++.h>
using namespace std;
int a[101][101], visited[101][101], e[101][101], n, temp, ret = 1;
int dy[4] = {-1, 0, 1, 0}, dx[4] = {0, 1, 0, -1};
void dfs(int y, int x, int d){
	visited[y][x]=1;
	for(int i=0; i<4; i++){
		int ny=y+dy[i];
		int nx=x+dx[i];
		if(ny<0 || nx<0 || ny>=n || nx>=n ) continue;
		if(!visited[ny][nx] && a[ny][nx]>d ) dfs(ny, nx, d);
	}
	return;
}

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
	cin>>n;
	for(int i=0; i<n; i++){
		for(int j=0; j<n; i++){
			cin>>a[i][j];
		}
	}
	for(int d=1; d<101; d++){
		fill(&visited[0][0], &visited[0][0]+ 101 * 101, 0);
		int cnt=0;
		for(int i=0; i<n; i++){
			for(int j=0; j<n; j++){
				if(a[i][j]>d && !visited[i][j]){
					dfs(i, j, d);
					cnt++;
				}
			}
		}
		ret=max(ret, cnt);
	}
	cout<<ret<<'\n';
	return 0;
}

답변 1

1

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 정호님 ㅎㅎ


	for(int i=0; i<n; i++){
		for(int j=0; j<n; i++){

이부분이요 i++이 되어야 하지 않을까요? (2번쨰 줄이요)

 

감사합니다.

박정호님의 프로필 이미지
박정호

작성한 질문수

질문하기