inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

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

2-C 질문 있습니다

120

AA66

작성한 질문수 29

0

http://boj.kr/6fddcaf0cc7c429f979e53823889d3bd

 

저는 이렇게 ret 을 0으로 두고 풀었는데요. 만약 ret을 1로 두고 푼다면 비에 전체가 잠기는 경우에는 안전영역이 0일텐데 이경우에 어긋나서 틀려야 되는거 아닌가요?

예를 들면 2*2로
50 50
50 50
의 높이로 구성된 지역에 비가 100씩 와버리게 되면 안전영역은 0개가 아닌가요? 그래서 ret은 1이 되면 안된다고 생각하는데 왜 맞게끔 채점이 되는건지 궁금합니다.

c++ 코딩-테스트

답변 2

0

큰돌

안녕하세요 ㅎㅎ

저는 이렇게 ret 을 0으로 두고 풀었는데요. 만약 ret을 1로 두고 푼다면 비에 전체가 잠기는 경우에는 안전영역이 0일텐데 이경우에 어긋나서 틀려야 되는거 아닌가요?

>> 이 문제의 경우

첫째 줄에 장마철에 물에 잠기지 않는 안전한 영역의 최대 개수를 출력한다.

를 구하는 것입니다. 즉, 비의 높이는 정해져있지 않습니다. 여러가지 비의 높이 - 경우의 수를 기반으로 안전영역을 구하는 것이죠.

예를 들면 2*2로
50 50
50 50
의 높이로 구성된 지역에 비가 100씩 와버리게 되면 안전영역은 0개가 아닌가요? 그래서 ret은 1이 되면 안된다고 생각하는데 왜 맞게끔 채점이 되는건지 궁금합니다.

>> 이 경우에 비가 100이 되면 0이 맞습니다만 40정도가 오면 1이 됩니다.

 

 


또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.

 

0

AA66

네 그래서 0이 되는 경우가 있기 때문에 ret의 초기값을 1로 설정하면 안되는거 아닌가요?

0

큰돌

안녕하세요 ㅎㅎ

반드시 안전영역은 1이상이 됩니다.

우리는 비의 높이가 0, 1, 2, 3... 여러가지 경우의 수 중 최대 안전영역을 찾는것이며

이 여러가지 경우의 수에 기반하여 안전영역은 1이상이 되는 것이 자명하기 때문에 초기값은 1이여야 합니다.

 

감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

AA66님의 질문에 답변드리기 전에, 유사한 맥락의 질문을 찾아보았습니다. 이러한 질문은 특히 “안전 영역” 문제와 관련하여 자주 등장하는데요, ret 변수의 초기값을 1로 설정했을 때와 0으로 설정했을 때의 결과에 대한 의문점이 주요 관심사입니다.

유사 질문 및 답변 링크:

  1. 2-C 복습 ! - 이 질문에서는 안전영역의 최대값을 구하기 위해 ret을 1로 초기화하는 이유에 대한 설명이 있습니다. 큰돌님께서는 ret을 1로 초기화하는 이유에 대해, 비가 전혀 오지 않았을 경우의 최소 안전 영역 수를 고려하는 것임을 설명하셨습니다. 이는 일반적으로 모든 지역이 잠길 경우(즉, 높이가 아주 높은 비가 왔을 경우)를 제외한 나머지 시나리오를 고려했을 때의 기본값입니다.

또한,

  1. 문제 - 안전영역 질문드립니다. - 여기서도 비슷한 문제에 대한 질문이 있었으며, 구체적으로 비의 높이에 따른 for문 설정의 중요성과 ret 변수의 초기값 설정에 관한 논의가 있었습니다.

요약 및 설명:

이와 같은 문제에서, ret 변수의 초기값을 1로 설정하는 이유는 비가 전혀 오지 않아 모든 지역이 안전 영역으로 남아 있는 경우(즉, 안전 영역의 개수가 최소 1개 이상임을 보장하는 경우)를 포괄하기 위함입니다. 이러한 방식으로 초기화하는 것은 최악의 시나리오(즉, 모든 지역이 물에 잠겨 안전 영역이 0개가 되는 경우)를 제외한 모든 상황에서의 계산을 위한 기본값을 설정하는 것입니다. 하지만, 문제의 특정 조건이나 비가 오는 시나리오의 범위를 고려할 때, ret의 초기값을 조정해야 할 수도 있습니다. 보통 이러한 경우는 문제에서 주어진 조건과 입력값의 범위에 따라 다를 수 있으므로, 문제를 해결하는 데 있어서 문제의 요구사항을 정확히 이해하는 것이 매우 중요합니다.

질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

살구 클럽에 대한 질문있습ㄴ디ㅏ

0

18

1

교안 158페이지 문의드립니다

0

28

2

코딩살구클럽 관련 건의사항

0

67

1

코살에 19942 다이어트 문제에 N의 범위가 빠져있슴니다

0

29

1

진행 방법 질문드립니다!

0

62

2

2-I) 왜 이 문제가 그래프이론 카테고리에 있는지 잘 모르겠습니다.

0

60

2

2주차 개념#12 트리 순회

0

29

2

백준사이트가 종료된다고 합니다.

0

289

2

백준 서비스 종료

9

898

1

sk 하이닉스 코테 대비

0

371

2

3-G 최댓값 질문

0

51

1

모듈러 연산 값이 10이 아닌 경우도 있지 않나요?

0

83

2

3-I 코드 질문드립니다.

0

62

2

3-N 질문 있습니다.

0

66

2

학습방법

0

102

2

4-H 질문 있습니다 (코드 리뷰)

0

66

2

코딩테스트 어디까지 준비해야 하는지 질문이 있습니다.

0

173

2

2-O 반례가 무엇일지 어떤 부분이 틀렸는지 잘 모르겠습니다.

0

69

2

2주차 개념 #4-2. 인접행렬 질문있습니다.

0

64

2

1-A 문제풀이 후 궁금한 점이 생겨서 질문드립니다.

0

51

2

조합 재귀 풀이 확인 해주시면 감사하겠습니다.

0

68

2

함수별 시간복잡도

0

74

2

3-h 질문입니다.

0

49

1

안녕하세요 선생님. 시간 복잡도 4번 질문있습니다.

0

54

2