문제점을 모르겠습니다.
182
작성한 질문수 47
#include<iostream>
#include <fstream>
#include<string>
#include<cstdlib>
#include<vector>
#include<cmath>
#include <algorithm>
#include <cctype>
#include <cstring>
#include<stack>
#include<queue>
#include <utility>
#define INF 214700000
using namespace std;
int n, m;
int ch[51];
int res= 9999,sum=0,dis;
vector <pair<int, int>> p;
vector <pair<int, int>> h;
void DFS(int s, int L) {
if (L == m) {
for (int i = 0;i < m;i++) {
cout << ch[i] << " ";
}
cout << endl;
sum = 0;
for (int i = 0;i<m;i++) {
int x1 = p[ch[i]].first;
int y1 = p[ch[i]].second;
dis = 9999;
for (int j = 0;j < h.size();j++) {
int x2 = h[j].first;
int y2 = h[j].second;
int d = abs(x2 - x1) + abs(y2 - y1);
dis = min(dis,d);
}
sum += dis;
}
if (sum <res) res = sum;
}
else {
for (int i = s;i < p.size();i++) {
ch[L] = i;
DFS(i + 1, L + 1);
}
}
}
int main() {
ios_base::sync_with_stdio(false);
//ifstream cin;
///cin.open("input.txt");
//if (cin.is_open()) {
cin >> n >> m;
int a;
for(int i=1;i<=n;i++){
for (int j = 1;j <= n;j++) {
cin >> a;
if (a == 2) {
p.push_back({ i,j });
}
else if (a == 1) {
h.push_back({ i,j });
}
}
}
DFS(0, 0);
cout <<res;
//}
}
제가 선생님하고 다르게 짠부분은 i에 pizza값을 넣고
j에 house를 넣었는데 이 부분이 틀린거 같은데 틀린이유를 모르겠습니다...
답변 1
0
문제 내용을 보면
"도시에는 각 집마다 “피자배달거리”가 았는데 각 집의 피자배달거리는 해당 집과 도시의 존재 하는 피자집들과의 거리 중 최소값을 해당 집의 “피자배달거리”라고 한다. "
"도시의 피자 배달 거리는 각 집들의 피자 배달 거리를 합한 것을 말합니다."
내용이 있습니다.
집이 기준이 되어 피자배달거리를 구해야 합니다. 즉 피자배달거리는 집 개수만큼 나와야 합니다.
테스트 케이스 질문
0
373
1
병합정렬 시간복잡도 질문
0
462
1
41.연속된 자연수의 합 문제풀이에서 수학적인 원리를 모르고 있습니다.
0
1345
2
질문드립니다.
0
376
1
질문드립니다!
0
430
1
dev 프로그램 질문
0
275
1
문제가 이해가 안되요
0
376
1
4번 나이차이 문제 접근법 질문 드립니다.
0
307
1
source file not compiled
0
1047
3
59번 질문드립니다.
0
372
1
25번 문제 질문
0
349
1
4. 나이차이 문제 질문입니다.
0
372
1
90번 라이언 킹 심바 1번 테스트 케이스
0
470
1
71번 문제 전역 변수 질문 있습니다
0
365
1
75번, 79번 priority_queue관련
1
355
1
75.최대 수입 스케줄
0
400
2
복면산 정답의 수
0
431
1
테스트 케이스에 대해서
0
445
1
수업 내용 질문입니다!
1
232
1
풀어보면 좋은 문제 목록 - 2580 스토쿠 DFS 질문입니다!!
0
822
2
12. 플로이드-와샬(그래프 최단거리) . 27:25초
0
255
1
다른 풀이 방식
0
317
1
크루스칼 vs 프림
0
306
1
숫자 총개수 small 질문있습니다.
0
242
1





