본문 바로가기

전체 글

(426)
[Algorithm] [Python/Swift] Programmes - 최댓값과 최솟값 Programmers - 최댓값과 최솟값 문제 설명 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 (최소값) (최대값)형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 1 2 3 4라면 1 4를 리턴하고, -1 -2 -3 -4라면 -4 -1을 리턴하면 됩니다. 제한 조건 s에는 둘 이상의 정수가 공백으로 구분되어 있습니다. 입출력 예 제출 코드 Python 1차 제출 코드 def solution(s): s = list(s.replace(" ",""))[::-1] arr = [] for i in range(len(s)): if s[i] == '-': arr[-1] = arr[-1] * -1 else: arr.ap..
[Algorithm] [Python/Swift] Programmers - 올바른 괄호 Programmers - 올바른 괄호 문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 ()() 또는 (())() 는 올바른 괄호입니다. )()( 또는 (()( 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. 제출 코드 Python def solution(s): if s[len(s)-1] == '(': return F..
[Algorithm] [Python/Swift] 백준/BOJ - 4344 _ 평균은 넘겠지 4344 - 평균은 넘겠지 문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 제출 코드 Python from sys import stdin n = int(stdin.readline()) for _ in range(n): well = 0 arr = list(map(int, stdin.re..
[iOS] Swift Basic for PS Swift basic for PS 본 문서에는 알고리즘 문제풀이를 위한 Swift 기본 문법을 정리한다. 키보드 입력받기 let inputValue = readline() print(inputValue) readLine() 함수의 반환값은 Optional String이다. 따라서, 옵셔널 값을 반환한다. Optional Unwrapping 을 강제로 진행하는 것은 지양해야 하지만 PS 목적의 코드이며 변수에 값이 들어있음을 확신할 수 있기에 강제 언래핑을 진행한다. let inputValue = readline() print(inputValue!) 이를 응용해보자. split()으로 쪼개기 let nums = readLine()!.split(seperator: " ") // ["1", "2", "3",..
[iOS] How to use Firebase Database in iOS How to use Firebase Database in iOS 본 문서에서는 Firebase 에서 제공하는 기능 중 하나인 Database에 관하여 기재한다. Firebase 실시간 데이터베이스 Firebase 실시간 데이터베이스는 클라우드 호스팅 데이터베이스다. 데이터는 JSON 형태로 저장되며 연결된 모든 클라이언트에 실시간으로 동기화된다. 앱에 Firebase 실시간 데이터베이스 추가 프로젝트 Podfile에 아래와 같이 의존성을 추가해준다. pod 'Firebase/Database' 이후 podinstall 을 한 뒤, .xcwordkspace 파일을 연다. 실시간 데이터베이스 규칙 구성 실시간 디비가 제공하는 규칙 언어로 데이터의 구조, 인덱스 생성 방법, 데이터를 읽고 쓸 수 있는 조건을 정..
[Algorithm] [Python] Programmers - 다리를 지나는 트럭 Programmers - 다리를 지나는 트럭 문제 설명 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이는 bridge_length이고 다리는 무게 weight까지 견딥니다. ※ 트럭이 다리에 완전히 오르지 않은 경우, 이 트럭의 무게는 고려하지 않습니다. 예를 들어, 길이가 2이고 10kg 무게를 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6]kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다. 따라서, 모든 트럭이 다리를 지나려면 최소 8초가 걸립니다. solution 함수의 매개변수로 다리 길이 bridge_length, ..
[Algorithm] [Python] Programmers - "H-Index" Programmers - H-Index 문제 설명 H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표한 논문 n편 중, h번 이상 인용된 논문이 h편 이상이고 나머지 논문이 h번 이하 인용되었다면 h의 최댓값이 이 과학자의 H-Index입니다. 어떤 과학자가 발표한 논문의 인용 횟수를 담은 배열 citations가 매개변수로 주어질 때, 이 과학자의 H-Index를 return 하도록 solution 함수를 작성해주세요. 제한사항 과학자가 발표한 논문의 수는 1편 이상 1,000편 이하입니다. 논문별 인용 횟수는 0회 이상 10,000회 이하입니..
[iOS] How to use Firebase Auth in iOS How to use Firebase in iOS 본 문서에서는 Firebase 에서 제공하는 실시간 데이터베이스 관련 공식 문서를 살펴보며 이에 대한 사용방법을 기재하도록 한다. How to install and setup on iOS Firebase 실시간 데이터베이스는 클라우드 기반 호스팅 DB이다. 데이터는 JSON 형태로 저장되며 연결된 모든 클라이언트에 실시간으로 동기화된다. 프로젝트의 Podfile에 아래 항목을 추가한다. pod 'Firebase/Database' pod을 설치한 이후 .xcwordspace 파일을 연다. RealTime Database setting Firebase 를 사용하기 위해서는 우선 Firebase를 초기화 해야 한다. 초기화 방법은 아래와 같다. AppDelega..