본문 바로가기

Computer

(119)
[구름톤 챌린지 - 9oormthon Challenge] Day 1 운동 중독 플레이어 구름톤 챌린지 1일차 - 운동 중독 플레이어 📜 문제 ✏️ 입력 ✏️ 출력 💡 풀이 W, R은 공백을 사용해 입력 받아야 하므로 map을 사용해 간편하게 입력을 받았다. 문제에서 주어진 공식을 적용해 RM이라는 변수에 저장을 하고 출력을 한다. W, R = map(int, input().split()) RM = int(W * (1 + R / 30)) print(RM) 문제 출처 - https://level.goorm.io/l/challenge/goormthon-challenge
[Baekjoon] 백준 14916 '거스름돈' 문제풀이 파이썬, Python, 알고리즘 정리 📝 14916 문제 춘향이는 편의점 카운터에서 일한다. 손님이 2원짜리와 5원짜리로만 거스름돈을 달라고 한다. 2원짜리 동전과 5원짜리 동전은 무한정 많이 가지고 있다. 동전의 개수가 최소가 되도록 거슬러 주어야 한다. 거스름돈이 n인 경우, 최소 동전의 개수가 몇 개인지 알려주는 프로그램을 작성하시오. 예를 들어, 거스름돈이 15원이면 5원짜리 3개를, 거스름돈이 14원이면 5원짜리 2개와 2원짜리 2개로 총 4개를, 거스름돈이 13원이면 5원짜리 1개와 2원짜리 4개로 총 5개를 주어야 동전의 개수가 최소가 된다. 입력 첫째 줄에 거스름돈 액수 n(1 ≤ n ≤ 100,000)이 주어진다. 출력 거스름돈 동전의 최소 개수를 출력한다. 만약 거슬러 줄 수 없으면 -1을 출력한다. 🧐 풀이 n = int..
[iOS - Swift] 옵셔널(Optional)에 대하여, 옵셔널 추출, 옵셔널 바인딩(Optional Binding), 옵셔널 체이닝(Optional Chaining) 옵셔널(Optional) 이란? 옵셔널이란 값이 있을 수도 있고, 없을 수도 있는 것이다. 일반적인 프로그래밍 언어에서는 값이 null 인 변수에 접근하면 프로그램이 종료된다. 하지만, swift에서는 옵셔널을 사용하면 값이 없는 변수에 접근해도 프로그램이 종료되지 않는다. 옵셔널(Optional) 을 사용하는 이유 값이 없는 데이터 공간에 접근하려고 하면 에러가 발생한다. 값을 초기화하지 않았기 때문에 메모리에 값이 저장되어 있지 않을 것이다. 혹은, ‘쓰레기 값’이 저장되어 있을 것이다. 코드로 간단하게 예시를 들어보겠다. var name : String print(name) 위의 예시를 실행시켜보면 에러가 발생할 것이다. 왜냐면 name에는 아무런 값이 있지 않기 때문이다. 그럼 앱이 꺼지지 않게 ..
[Baekjoon] 백준 10026 '적록색약' 문제풀이 파이썬, Python, 알고리즘 정리 📝 10026 문제 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나뉘어져 있는데, 구역은 같은 색으로 이루어져 있다. 또, 같은 색상이 상하좌우로 인접해 있는 경우에 두 글자는 같은 구역에 속한다. (색상의 차이를 거의 느끼지 못하는 경우도 같은 색상이라 한다) 예를 들어, 그림이 아래와 같은 경우에 RRRBB GGBBB BBBRR BBRRR RRRRR 적록색약이 아닌 사람이 봤을 때 구역의 수는 총 4개이다. (빨강 2, 파랑 1, 초록 1) 하지만, 적록색약인 사람은 구역을 3개..
[git 사용법] - Branch 브랜치 이동, 변경, 파일 복원, 삭제, 병합(merge), Branch 협업을 하면 개발자들은 작업 레파지토리에서 소스 코드를 공유하면서 작업을 한다. 만약 어플을 만드는데 어떤 개발자는 채팅 기능을 만들고, 또 어떤 개발자는 검색 기능을 맡아 작업한다고 가정해보자. 채팅 작업이 끝난 후 검색 작업을 수행한다면 연관성이 없는 기능 단위의 작업을 비효율적으로 하고 있는 것이다. 각자 작업을 다 한 후에 합치는 방법이 더 효율적일 것이다. Git에서는 branch와 merge라는 명령으로 이것을 가능하게 한다. Branch는 독립적으로 작업을 할 수 있는 공간이다. main branch가 아니라, 채팅은 chat branch에 검색은 search branch 에서 작업을 하면 서로 독립적인 공간에서 작업을 하기 때문에 서로의 작업에 영향을 주지 않는다. 각자의 작업..
[iOS - Swift] is, as 타입 캐스팅 (업 캐스팅, 다운 캐스팅) 앱을 개발하다 보면 is, as, as!, as? 와 같이 같은 듯 다른 문법을 본 적이 있을것이다. 우리는 이걸 타입 캐스팅 이라고 하는데 어떤 것들이 다른지 정확히 짚고 넘어가기 위해 글을 작성하게 되었다. 타입 캐스팅 (Type Casting) 변수나 상수의 타입을 다른 타입으로 변경하는 것을 말한다. 인스턴스의 타입을 확인하거나, 인스턴스를 같은 계층에 있는 다른 슈퍼 클래스(상위)나 서브 클래스(하위)로 취급하는 방법이기도 하다. 타입 캐스팅은 is 와 as 연산자를 사용한다. is 연산자 특정 인스턴스의 타입을 확인하는 연산이다. 반환 타입은 Bool이다. let mystr : String = "Kimgahyun" mystr is Character // false mystr is String ..

728x90