Time limit가 걸리는데 어떻게 해결해야 할까요?
228
작성한 질문수 6
#include <stdio.h>
#include <vector>
using namespace std;
int n, m;
int answer = 0;
void solution(vector<vector<int>> & arr, vector<int> & visited, int current){
if(current == n){
answer++;
return;
}
visited[current - 1] = 1;
for(int i=0;i<n;i++){
if(arr[current-1][i]!=0 && visited[i] == 0){
visited[i] = 1;
solution(arr, visited, i+1);
visited[i] = 0;
}
}
visited[current - 1] = 0;
}
int main(void){
//freopen("input.txt", "rt", stdin);
int start, end;
scanf("%d %d", &n, &m);
vector<vector<int>> arr(n, vector<int>(n));
vector<int> visited(n);
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
scanf("%d %d", &start, &end);
arr[start-1][end-1] = 1;
}
}
solution(arr, visited, 1);
printf("%d", answer);
return 0;
}안녕하세요. 다름이 아니라 수업 듣기 전 짠 코드를 이용해 채점 프로그램을 실행시키면 모든 case에 대해 time limit가 나와서 질문드립니다. 위 코드에 어떤 문제가 있을까요? 채점파일 내에 있는 input.txt 입력받고 실행시키면 전부 정답으로 나옵니다.
답변 1
0
안녕하세요^^
입력을 잘 못 받고 있습니다. 아래 처럼 간선 정보를 입력받아야 합니다.
for(int i=0;i<m;i++){
scanf("%d %d", &start, &end);
arr[start-1][end-1] = 1;
}
87번 채점 프로그램에 오류가 있는 것 같습니다.
0
90
2
그리디 파트
0
115
2
안녕하세요. 선생님(54번 코드 관련 문의)
0
141
2
테스트 파일 exit_coe_1, time_limit_exceeded 질문
0
143
1
C언어로 코드를 짜면 채점 시에 한 문제 빼고 시간 초과가 발생하는데 해결하는 방법이 있을까요?
0
172
1
19번 질문있습니다
0
123
1
6번 관련 채점오류입니다
0
88
2
22번 문제는 C로 풀어주신 건가요 C++로 풀어주신 건가요?
0
166
2
dev C++ 콘솔창 바로 닫힘
0
245
1
최신화하기
0
171
1
채점이 안되요...
1
261
1
안녕하세요 강사님 정렬에 대해서 설명이 조금 더 듣고 싶습니다.
0
113
1
45번 공주구하기 문제를 list를 이용해서 이렇게 풀어도 될까요?
0
155
1
39번 두 배열 합치기 문제 채점 오류인가 코드 오류인가
0
155
0
채점기에서 틀렸다고 나오는데 이유를 모르겠습니다.
0
150
2
해당 강의에서 C언어로만 진행하는 강의 문의 건
0
145
2
87번 문제 섬나라 아일랜드 질문
0
128
1
16번 문제에서 직접 답을 대입하면 정답이 나오는데 채점에서 wrong answer가 나옵니다.
0
149
1
40번 교집합 문제
0
166
1
43번 뮤직비디오 문제 테스트케이스 4번을 만족 못합니다.
0
170
1
41. 연속된 자연수의 합 문제 질문있습니다.
0
166
1
질문있습니다.
0
193
2
시간초과가 나요
0
172
1
43번 문제 3 ~ 5번에 문제가 있는것 같습니다.
0
249
1





