집을 (1, 2)라고 한걸로봐서 좌표는 1부터 시작이지만
거리를 재는거라서 0부터해도 상관없다
예제를 예로들면
6개의 피자집이 있고
이중에 네개의 피자집을 뽑아내는
6C4의 조합문제다
2중포문으로 행우선으로 입력받은 행렬을 탐색하면서
하우스와 피자집의 좌표를 리스트에 넣어두고
답을 넣을 res변수를 글로벌로 만든다
재귀가 도는 상태트리를 생각해보면
처음에 0 1 2 3 4 5 피자집을 모두 탐색하고
0이 선택되면 1 2 3 4 5
1이 선택되면 2 3 4 5
선택된 피자집의 길이가 M과같을때까지
DFS로 4개의 피자집을 뽑아나간다
이렇게 뽑고나면 6C4니까 15개의 피자집이 리스트에 담겨올텐데
하나의 피자집 리스트가 뽑힐때 마다
도시의 최소피자배달거리를 뽑아서 출력하면된다
집의 갯수와 뽑은 피자집의 인덱스만큼 포문을 돌게하고
집이 하나 선택되면 집의 좌표를 정하고
각 집과 피자집의 피자배달거리의 절대값을 만들어서
더한 값들을 res에 비교해서 도시의 피자배달거리를 갱신하면서
최소값을 넣는다
꿈★은 이루어진다
내일채움공제 되는 중소기업 가자 화이팅!
파이썬 저렇게 네임 == 메인으로 하는게 국룰임??
ㅇㅇ 보통은 저거 필요없는데 파일 하나가지고 모듈로 쓸 수도 있고 걍 프로그램으로도 쓸 수도 있게 하려다보니까 저러케 된걸로 암
__name__ == 'main' 인 경우 > 다른데다가 모듈로 딸려간게 아닌 경우인거