2798번 - 블랙잭
3중 for문의 값 설정을
for (int i = 0; i < n - 2; i++) { for (int j = i + 1; j < n - 1; j++) { for (int k = i + 2; k < n; k++) {
에서
for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { for (int k = 0; k < n; k++) {
로 바꾼 후
if (i != j && j != k && k != i) {
조건을 추가해 주었더니 정답처리가 되었는데, 저는 처음부터 i,j,k 중 같은 값이 있는 것을 방지하기 위해 처음 코드처럼 작성하였었는데 무엇이 잘못된지 잘 모르겠어서 질문합니다. 처음 코드처럼 적어도 빠지는 값 없이 모두 반복문이 돌아가서 테스트되는 것 아닌가요?
j가 i+2가 되면 k랑 같은 값이 됩니다.
검토를 꼼꼼히 안 해서 빠뜨렸네요.. 알려주셔서 감사합니다.
댓글을 작성하려면 로그인해야 합니다.
wwwyes24com 3년 전
3중 for문의 값 설정을
for (int i = 0; i < n - 2; i++) {
for (int j = i + 1; j < n - 1; j++) {
for (int k = i + 2; k < n; k++) {
에서
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
for (int k = 0; k < n; k++) {
로 바꾼 후
if (i != j && j != k && k != i) {
조건을 추가해 주었더니 정답처리가 되었는데, 저는 처음부터 i,j,k 중 같은 값이 있는 것을 방지하기 위해 처음 코드처럼 작성하였었는데 무엇이 잘못된지 잘 모르겠어서 질문합니다. 처음 코드처럼 적어도 빠지는 값 없이 모두 반복문이 돌아가서 테스트되는 것 아닌가요?