프래그먼트 (Fragment) - 1 LinearLayout과 겉보기에 차이는 없지만 Fragment는 독립적인 Activity로 이벤트 처리가 가능하다. * 다른 Activity에 재사용 가능 * 독립적이지만 Activity에 종속 (Activity가 죽으면 같이 죽음) * 자신만의 Lifecycle, Layout을 가지고 있음 * Activity 실행 중 삽입, 제거 가능 onCreateView()는 화면을 구성할 때 호출되며 대부분의 코드를 여기에 작성함 Fragment 만들기 -> 일반적인 Activity는 setContentView 에서 Layout을 객체화 시켰다면, Fragment는 LayoutInflater(Inflate Method)를 사용해서 화면에 보여준다. Inflater 객체는 CallbackMethod onCreat.. 2021. 11. 24. 스피너 (Spinner) 스피너 만들기 Spinner는 Adapter를 통해 데이터를 공급받고 보여준다. planets -> Spinner에 넣을 string-array item들을 모아놓음 (데이터) adapter -> Arrayadapter를 사용 -> this : context는 Activity 객체를 지칭. 어떤 화면에 보여줄건가? MainActivity -> android.R.layout.simple_spinner_item : 어떻게 보여줄건가? spinner의 layout은 초기화면(아이템 한 개만 보이는)과 클릭했을때 여러 아이템들을 펼쳐서 보여주는 화면 두 개로 구성되는데 이 중 한 개 아이템만 보이는 레이아웃 setDropdownResource -> Spinner의 두 개 레이아웃 중 여러 아이템들을 펼쳐서 보여.. 2021. 11. 23. 백준 1946 파이썬 서류 심사와 면접 성적 두가지를 비교 해야 하는데 서류 심사 결과를 기준으로 정렬을 해 주고, 면접 성적을 비교 하기로 했다. import sys T = int(input()) for _ in range(T): count = 1; a = [] N = int(input()) for _ in range(N): n, m = map(int, sys.stdin.readline().split()) a.append([n, m]) a.sort() M = a[0][1] # 서류 심사 성적으로 정렬 해 주고, M은 면접 성적 순위 for i in range(1, N): if M > a[i][1]: count += 1 M = a[i][1] print(count) 서류 심사 성적이 낮은 사람이 채용되려면 면접 성적은 반드시 .. 2021. 10. 5. 백준 11047 파이썬 n, k = map(int, input().split()) coins = []; coin_count = 0 for _ in range(n): coins.append(int(input())) coins.reverse() for i, coin in enumerate(coins,1): if k == 0: break if k // coin >= 1: coin_count += k // coin k -= coin * (k//coin) print(coin_count) 동전개수의 최솟값을 구해야 하는데 문제 조건에 A(i)는 A(i-1)의 배수라고 적혀있다. 따라서 큰단위의 동전을 가능한 많이 사용하면 된다. ( 배수가 아닐경우 무작정 큰단위의 동전을 사용하면 안된다. ) 2021. 3. 25. 백준 1931 """ 최대한 많이 사용하려면? 1. 빨리 끝나는 회의부터 찾아서 2. 차례차례 회의 스케줄에 넣음 """ N = int(input()) meeting = [] for _ in range(N): meeting.append(list(map(int, input().split()))) # 끝나는 시간 오름차순으로 정렬 meeting.sort(key = lambda x: (x[1], x[0])) print(meeting) count = 1 tmp = meeting[0][1] # 첫 회의의 끝나는 시간 for i in meeting[1:]: if tmp 2021. 3. 24. 백준 16208 n = int(input()) iron_rod = sorted(list(map(int, input().split()))) sum_iron_rod = sum(iron_rod) count = 0 for i in iron_rod: sum_iron_rod -= i count += i * sum_iron_rod print(count) 비용이 최소가 되려면 곱하는 수가 작아야 한다. 예를 들어 4개 막대기의 크기가 3, 5, 4, 2 므로 (3+5+4) * 2 라는 식이 나와야 한다는 뜻이다. 2를 잘라버리고 나서는 ( 코드에서 sum_iron_rod 에서 버림 ) 3이 가장 작기때문에 (5+4) * 3 이라는 식이 나와야 최소가 된다. 2021. 3. 22. 이전 1 2 3 4 다음