본문 바로가기

ios122

Swift) 백준 2108 (통계학) 요구능력 : 최빈값을 구할줄 아느냐 코드설명 : 최빈값을 구하기 위해서는 Dictionary를 사용하는게 가장 알맞다. 꽤 오래 쓰지 않아서 간단하게 개념정리를 하고 넘어가야겠다. 딕셔너리 : 순서없이 키와 쌍의 값으로 구성되고, 키는 중복될 수 없다. 여러가지 선언방법이 있지만 여기서 사용한 선언방법 var dict = [Int: Int]() 2. 딕셔너리의 사용 dictionary에 값을 입력받을 때마다 바로바로 넣어주고 value가 없는경우에는 default값이 0이 들어가도록 해줬다. 그리고 입력받을 때마다 키의 value에 1씩 더해줘서 만약 3, 2, 2 0 을 입력하고 dict값을 출력해본다면 [3: 1, 2: 2, 0: 1] 이렇게 출력될것이다. dict[num, default: 0] +=.. 2021. 8. 21.
Swift) 백준 2751번 (수 정렬하기2) 요구능력 : 언어에 내장된 정렬함수를 아느냐 코드설명 : Swift에 내장된 정렬함수를 사용했다. 배열에 입력받은 수를 추가하고 정렬함수로 정렬했다. sort()는 기본적으로 오름차순이다. 후기 : 앞으로 정렬은 내장함수다. let n = Int(readLine()!)! var arr: [Int] = [] for _ in 0.. 2021. 8. 20.
Swift) 백준 2750번 (수 정렬하기) 요구능력 : 정렬을 할 줄 아느냐 코드설명 : 버블정렬을 사용했다. 5 2 3 4 1 이 있으면 2 5 3 4 1 2 3 5 4 1 2 3 4 5 1 2 3 4 1 5 이런식으로 전체를 돌면서 한자리씩 옮기는 것이다. 이렇게 하다보면 오름차순으로 1, 2, 3, 4, 5가 된다. 후기 : 몇일전 시험본 산업기사 필기에서 봤던 버블정렬이 생각나서 써봤다. let n = Int(readLine()!)! var arr: [Int] = [] for _ in 0.. 2021. 8. 20.
Swift) 백준 1436번 (영화감독 숌) 요구능력 : 연속된 수를 판별해 낼 수 있느냐 코드설명 : 1. result 변수를 1씩 더해가며 우리가 원하는 수를 찾을것이다. 2. while문을 이용해서 1씩 더하자. 3. 문자열로 변경해서 6이 3번연속 나오는지를 확인하자. 4. 6이 나온다면 판별변수에 + 1 씩 더해주자.( 6이 아니면 0을 만들어 준다. 6이 연속된게 아니라면 아래 if문에 안걸리게 하기위함) 5. 판별변수가 3이면 count에 1을 더해준다.( count가 몇 번째로 큰수인지 확인할 변수이다) 6. n과 count가 같다면 1씩 더해왔던 실질적인 수가 들어있는 result를 출력해주고 while문을 빠져나간다. 후기 : 이렇게 수의 순위를 비교하는 문제는 하나씩 더해가면서 조건을 넣어주면 해결하기 쉽다. let n = In.. 2021. 8. 20.