개발자

문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. 받은 1병과 5병을 받았을 때 남은 1병을 모두 마신 뒤 가져가면 1병을 또 받을 수 있..
KBO Application 고민 1 문득 그런 생각이 들었다. 배경 색이 연하면 상관이 없겠지만 강력한 단색을 사용하는 팀의 경우 아래에 내용을 적어내기엔 가독성이 현저히 떨어질 것 같다는 생각. 그래서 제목 테두리 정도만 팀 컬러를 사용하고 나머지는 흰색으로 통일해야겠다! 해결 단계 1 상단에 팀 로고와 팀명이 쓰여지는 곳보다 조금 더 크게 label을 깔았다. (배경색을 일부만 변경하는 방법을 몰라서 Label을 사용하고 labelColor를 이용했다...ㅠ) 구속도 원하는 위치에 꼼꼼하게 잡고 해당 Label을 15번줄 backgroundLabel이라고 선언해주었다. 그리고 바꾸는 김에 viewDidLoad 내부가 너무 많아지는 것 같아서 View Controller와 똑같이 detailSetup..
문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를 위해 수웅이는 음식을 주문했는데, 대회의 조건..
문제 설명 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다. 예를 들어, s="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다. b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. n은 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 자신보다 두 칸 앞에 a가 있습니다. 이는 2로 표현합니다. n도 자신보다 두 칸 앞에 n이 있습니다. 이는 2로 표현합니다. a는 자신보다 두 칸, 네 칸 앞에 a가 있..
문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 원소 ≤ 9 numbers의 모든 원소는 서로 다릅니다. 1차 코드 import Foundation func solution(_ numbers:[Int]) -> Int { var minusNum = 0 var result = 0 for i in numbers { minusNum += i } result = 45 - minusNum return result } 1차 결과
문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. 제한 사항 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. 1차 코드 func solution(_ arr:[Int], _ divisor:Int) -> [Int] { var result: [Int] = [] for i in arr { if i % divisor == 0 { result.append(i) } } if result..
1~3 Review 1~3주차 수업에 들어있던 내용을 토대로 강의없이 내가 만들고싶은대로 KBO 구단 목록 어플을 만들어볼거다. 구단 별 이름을 클릭하면 창단년도랑 역대 우승, 간략한 정보들이 보이고 뒤로가기 버튼이 있도록 해볼거다. 그러기 위해서 Table View Cell을 사용하는 것은 너무 무의미하다고 생각이 되기 때문에, 버튼 형태로 꾸며볼 생각이다. Main KBO Logo 삽입 (그림 삽입) 1. Assets에 들어가서 원하는 그림 파일을 불러와서 저장한다. 2. UIImageView를 생성한 후 IBOutlet으로 링크한 뒤 mainLogo라는 이름을 붙여주었다. 3. 이미지 로딩 방법이 변경되었는데, mainLogo.image = #imageLiteral() 이라고 써야한다. 대/소문자도..
문제 설명 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다. 0 zero 1 one 2 two 3 three 4 four 5 five 6 six 7 seven 8..
Git 강의 Terminal 명령어 Pwd (Print working directory) 지금 작업하고있는 폴더의 위치를 보는 명령어 Ls (list) 내 현재 폴더 내부의 폴더 및 파일 내역을 보는 명령어 Ls -a (list -all) ls의 기능 + 현재 폴더 내부의 숨겨진 폴더 및 숨겨진 파일 내역까지 보는 명령어 Cd (change directory) 폴더 내부로 이동 Cd.. 한 단계 상위 폴더로 이동 Cd 폴더명/폴더명 두 가지 이상의 폴더 단위로 점프 가능 Mkdir (make directory) 폴더 생성 Touch 파일명 파일 생성 Git 명령어 Git init 코드 관리를 시작하는 명령어(초기셋팅) 프로젝트 시작 전 한 번만 입력하면 됨 정확한 프로젝트폴더(경로)에서 입력해야 함 Gi..
문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. 제한 조건 공백은 아무리 밀어도 공백입니다. s는 알파벳 소문자, 대문자, 공백으로만 이루어져 있습니다. s의 길이는 8000이하입니다. n은 1 이상, 25이하인 자연수입니다. 1차 고민 큰 문제가 생겼다. 누가봐도 아스키 코드에서 +를 해주는 방식으로 푸는 것 같은데 아스키 코드를 다루는 방법을 아예 모른다는 것이다. 어쩔 수 없이 일단 풀어내기 위해서 소문..
sngsp
'개발자' 태그의 글 목록 (3 Page)