PICNIC 오답 확인 요청드립니다. yeoshim PICNIC 문제를 go로 제출하였는데 계속 오답이 나옵니다. 혹시 실패한 케이스를 확인할 수 있는 방법은 없는지요? 확인 부탁드립니다. 감사합니다. 참고로 제출한 소스 첨부합니다. package main import ( "fmt" ) // all case w/ dup => dic sorting func main() { var cases int fmt.Scanf( "%d\n", &cases ) for cases > 0 { var stdNum int var pairNum int fmt.Scanf( "%d %d\n", &stdNum, &pairNum ) // fmt.Printf( "sn: %d pn: %d\n", stdNum, pairNum ) var areFriends [10][10]bool var taken [10]bool // init for i:=0; i<10; i++ { for j:=0; j<10; j++ { areFriends[i][j] = false } } for i:=0; i<10; i++ { taken[i] = false } for i:=0; i<pairNum; i++ { var std1 int var std2 int fmt.Scanf( "%d", &std1 ) fmt.Scanf( "%d", &std2 ) areFriends[std1][std2] = true areFriends[std2][std1] = true } fmt.Printf( "%d\n", countPairs(taken, areFriends, stdNum) ) cases-- } } func countPairs( taken [10]bool, areFriends [10][10]bool, stdNum int )int { var firstFree = -1 for i:=0; i<stdNum; i++ { if !taken[i] { firstFree = i break } } if firstFree == -1 { return 1 } var count = 0 for i:=firstFree+1; i<stdNum; i++ { if !taken[i] && areFriends[firstFree][i] { taken[i] = true taken[firstFree] = true count += countPairs( taken, areFriends, stdNum ) taken[i] = false taken[firstFree] = false } } return count } 8년 전
0개의 댓글이 있습니다. 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
yeoshim
PICNIC 문제를 go로 제출하였는데 계속 오답이 나옵니다.
혹시 실패한 케이스를 확인할 수 있는 방법은 없는지요?
확인 부탁드립니다.
감사합니다.
참고로 제출한 소스 첨부합니다.
8년 전