티스토리 뷰
링크 : https://www.hackerrank.com/challenges/correctness-invariant/problem
문제>
* 제대로 정렬된 값이 출력되게 코드를 수정할 것.
* 루프불변자에 대한 설명을 이해하라고 낸 문제인듯.
- 루프불변자 : 자료구조론에서 알고리즘을 검증하는데 쓰이는 개념. 반복마다 만족해야 하는 성질이다.
- 루프가 항상 참을 만족하는 조건이다.
Initialization : 루프 실행전(제한 된 의미로) true.
Maintenance : 반복 전에 true면, 다음 반복 전에도 true. (항상 참이라는 뜻 같다)
Termination : 끝나면 유용한 방법으로 해지?
- Initialization: It is true (in a limited sense) before the loop runs.
- Maintenance: If it's true before an iteration of a loop, it remains true before the next iteration.
- Termination: It will terminate in a useful way once it is finished.
해결방법.
- 제공 코드의 while (j > 0 && value < A[j]) 부분을
- while (j >= 0 && value < A[j]) 로 수정하면 통과한다.
'주간 알고리즘풀기' 카테고리의 다른 글
[171130][Codility](C#)StoneWall (0) | 2017.12.01 |
---|---|
[171129][HackerRank](C#)Mars Exploration (0) | 2017.11.29 |
[171127][HackerRank](C#)Ice Cream Parlor (0) | 2017.11.27 |
[171124][Codility](C#)TieRopes (0) | 2017.11.27 |
[171123][HackerRank](C#)Minimum Absolute Difference in an Array (0) | 2017.11.27 |
댓글