파이썬 알고리즘

    5. 바둑이 승차 - Cut Edge Tech

    바둑이 승차(DFS) 철수는 그의 바둑이들을 데리고 시장에 가려고 한다. 그런데 그의 트럭은 C킬로그램 넘게 태 울수가 없다. 철수는 C를 넘지 않으면서 그의 바둑이들을 가장 무겁게 태우고 싶다. N마리의 바둑이와 각 바둑이의 무게 W가 주어지면, 철수가 트럭에 태울 수 있는 가장 무거운 무게를 구하는 프로그램을 작성하세요. ▣ 입력설명 첫 번째 줄에 자연수 C(1

    전역변수와 지역변수

    전역변수와 지역변수

    사전지식 ▶if name =="__main__": 메인 스크립트 안에 있는 변수는 전역변수 ▶즉 if문 아래에 있는 cnt는 전역 변수 ▶cnt = 5의 의미 : 변수생성과 할당을 동시에 함 ▶전역변수는 모든 함수가 접근가능 ▶함수안에 있는 지역변수는 자신이 함수 안에 있는 지역 변수 인지 확인을 한다. 함수 안에 있으면 지역변수를 사용한다. ▶함수의 공간에 지역변수가 없는 경우 전역변수를 가져와서 쓴다. CASE 1 '''전역변수와 지역변수''' def DFS1(): print(cnt) def DFS2(): if cnt ==5: print(cnt) if __name__== "__main__": #스크립트실행시 가장 먼저 실행 cnt = 5 DFS1() DFS2() print(cnt) 실행결과 해설 DF..

    4.합이 같은 부분집합

    합이 같은 부분집합 N개의 원소로 구성된 자연수 집합이 주어지면, 이 집합을 두 개의 부분집합으로 나누었을 때 두 부분집합의 원소의 합이 서로 같은 경우가 존재하면 “YES"를 출력하고, 그렇지 않으면 ”NO"를 출력하는 프로그램을 작성하세요. 둘로 나뉘는 두 부분집합은 서로소 집합이며, 두 부분집합을 합하면 입력으로 주어진 원래의 집합이 되어 합니다. 예를 들어 {1, 3, 5, 6, 7, 10}이 입력되면 {1, 3, 5, 7} = {6, 10} 으로 두 부분집합의 합이 16으로 같은 경우가 존재하는 것을 알 수 있다. ▣ 입력설명 첫 번째 줄에 자연수 N(1

    3.부분집합 구하기(DFS)

    부분집합 구하기(DFS) 자연수 N이 주어지면 1부터 N까지의 원소를 갖는 집합의 부분집합을 모두 출력하는 프로그램 을 작성하세요. ▣ 입력설명 첫 번째 줄에 자연수 N(1