전체 글

전체 글

    전역변수와 지역변수

    전역변수와 지역변수

    사전지식 ▶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

    2. 이진탐색트리 순회

    2. 이진탐색트리 순회

    깊이우선탐색(DFS) 1.전위순회 import sys sys.stdin=open("input.txt", "r") def DFS(v): if v >7: return else: print(v, end=" ") #전위순회 DFS(v*2) #왼쪽 자식 호출 DFS(v*2+1) #오른쪽 자식호출 if __name__== "__main__": #스크립트실행시 가장 먼저 실행 DFS(1) 전위순회 함수 자신의 일(ex출력)을 처리한 다음에 자식노드를 호출하는 경우를 의미한다 2. 중위순회 import sys sys.stdin=open("input.txt", "r") def DFS(v): if v >7: return else: DFS(v*2) #왼쪽 자식 호출 print(v, end=" ") #중위순회 DFS(v*2+..