[Swift] 프로그래머스 주사위 고르기
자료구조와 알고리즘/알고리즘2024. 4. 12. 18:58[Swift] 프로그래머스 주사위 고르기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 A와 B가 n개의 육면체 주사위로 승부 각 면이 나올 확률이 동일 A와 B는 n / 2 개씩 가져가 주사위를 굴린 뒤, 나온 수를 합한 점수로 계산 A는 주어진 주사위에서 승리할 확률이 가장 높은 주사위를 선택 제한사항 승리할 확률이 가장 높은 주사위 조합으로 주어짐 n은 2의 배수 dice의 개수는 10개 이하 dice에 적힌 수는 100이하 자연수 풀이 각 주사위를 고를 수 있는 조합(combination) 구하기 n/2개를 던져서 나올 수 있는 조합 구하기 A가 고른 주사위들(1번의 원소들)을 2..

[Swift] 백준 6987: 월드컵
자료구조와 알고리즘/알고리즘2024. 4. 11. 18:16[Swift] 백준 6987: 월드컵

6987번: 월드컵 월드컵 조별 최종 예선에서는 6개국으로 구성된 각 조별로 동일한 조에 소속된 국가들과 한 번씩, 각 국가별로 총 5번의 경기를 치른다. 조별리그가 끝난 후, 기자가 보내온 각 나라의 승, 무승부 www.acmicpc.net 문제 월드컵 최종 예선에서는 6개국으로 구성 각 국가별로 한 번씩 총 5번의 경기 각 나라의 승, 무승부, 패를 보여주는 결과지 네 가지의 결과에서 가능한 결과라면 1, 불가능이라면 0으로 출력 제한사항 네 가지의 결과지 6개국의 결과로 승, 무승부, 패의 순서로 빈칸을 포함하여 18개 숫자로 구성 풀이 이게 어렵나? 승과 패가 같고 무승부를 대응해서 풀면 되지 안되더라... 문제 유형이 백트래킹에 맞춰 고민하기 시작했다. 일단 월드컵의 경기는 총 15번을 진행한다..

[Swift] 백준 12015번: 가장 긴 증가하는 수열2
자료구조와 알고리즘/알고리즘2024. 4. 6. 15:42[Swift] 백준 12015번: 가장 긴 증가하는 수열2

12015번: 가장 긴 증가하는 부분 수열 2 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000) www.acmicpc.net 문제 수열 A에서 가장 긴 증가하는 부분 수열의 길이를 출력 제한사항 수열의 크기 N은 1,000,000 이하의 자연수 수열 A를 이루고 있는 A𝘅는 1,000,000 이하의 자연수 풀이 수열 A로 [10, 20, 10, 30, 20, 50]이 주어진 상황에서 가장 긴 증가하는 부분 수열은 [10, 20, 30, 50]으로 길이 4를 반환하면 된다. DP로 풀게 되면 O(n²) 시간 복잡도를 가지게 된다. 이를 개선하기 위해서는 이진 탐색을 해야한다. Longes..

[Swift] 백준 15483번: 최소 편집 - DP
자료구조와 알고리즘/알고리즘2024. 4. 2. 15:30[Swift] 백준 15483번: 최소 편집 - DP

15483번: 최소 편집 첫째 줄과 둘째 줄에 두 문자열이 주어진다. 문자열은 알파벳 소문자로만 이루어져 있으며, 최대 1000글자로 이루어져 있다. www.acmicpc.net 문제 주어진 A를 최소 횟수로 연산을 수행하여 B로 만드는 문제 연산의 3종류 삽입: 한 위치에 문자 하나를 삽입 삭제: 문자 하나를 삭제 교체: 문자 하나를 다른 문자로 교체 제한사항 문자열은 알파벳 소문자로만 구성 문자열은 최대 1000글자 풀이 문제의 핵심은 얼마나 중복된 문자를 확인하는지가 중요하다. 물론 이 문제를 혼자서 해결 못했기에 이렇게 블로그에 정리 중이다. 편집 거리 알고리즘 위키의 Edit distance 내용을 보게 되면 다양한 종류에 대한 내용이 나온다. 글에서 이야기 하는 것은 2개의 문자열이 주어졌을 ..

AI 시대, 개발자는 어떤 준비를 해야할까?
Life style2024. 3. 20. 02:03AI 시대, 개발자는 어떤 준비를 해야할까?

스마트폰 혁명보다 훨씬 빠르다, 전세계 부가 몰릴 겁니다 Banking is necessary, Banks are not "은행 업무는 필요하지만, 은행은 필요하지 않다" - In 1994, Bill Gates 현재 2024년에는 여러 은행들이 그 시도를 하고 있다. 많은 은행들은 오프라인의 지점들을 minimize 시키고 어떻게 하면 디지털 세계에 accessable한 경험을 줄 수 있는지 고민하고 있다. 이와 마찬가지로 은행뿐만 아니라 학교도 디지털로 공부하고 학습하는 것들에 익숙해졌다. 대학에서 단순하게 책에 있는 내용을 전달하는 것들은 더 이상 경쟁력이 되고 있지 않다. 캠퍼스에 와야만 누릴 수 있는 강의법으로 바뀌어야 한다. 비슷한 의미로 필수라고 생각하던 냉장고도 그 가치가 조금씩 변화되고 있..

[Swift] 프로그래머스 N으로 표현
자료구조와 알고리즘/알고리즘2024. 3. 19. 21:10[Swift] 프로그래머스 N으로 표현

https://school.programmers.co.kr/learn/courses/30/lessons/42895 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 주어진 N과 사칙연산만으로 주어진 number와 동일하게 만들 수 있는 최소 횟수 제한사항 N은 1 이상 9 이하 number는 1 이상 32,000 이하 수식에는 괄호와 사칙연산만 가능 나누기 연산에서 나머지는 무시 최솟값이 8보다 크면 -1을 return 풀이 단순하게 사칙연산 말고도 55 같이 숫자를 붙여서도 표현할 수 있는 걸 확인 그리고 문제가 짧은만큼 문장 하나하나가 다 핵심이다...

[Swift] 백준 도넛과 막대 그래프 - 2024 카카오 겨울 인턴십
자료구조와 알고리즘/알고리즘2024. 3. 18. 13:32[Swift] 백준 도넛과 막대 그래프 - 2024 카카오 겨울 인턴십

https://school.programmers.co.kr/learn/courses/30/lessons/258711 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 총 3 가지 모양의 그래프 존재 여러 그래프들로 향하는 임의의 정점(이후 중점이라고 표현)이 존재 간선 정보가 담긴 배열 정점의 번호와 도넛 모양 그래프의 수, 막대 모양 그래프의 수, 8자 모양 그래프의 수를 반환 조건 그래프의 수는 2개 이상 존재 간선은 최대 1,000,000개 풀이 일단 자료가 1,000,000개 라면 단순한 반복문으로 푸는 거에 문제가 생긴다. Dictionary로..

백악관에서 C, C++ 언어를 쓰지 말라고 했다고? 왜??
Life style2024. 3. 12. 15:37백악관에서 C, C++ 언어를 쓰지 말라고 했다고? 왜??

현재 Swift를 사용한 iOS 개발을 하면서 관련이 없을 수도 있겠지만, 워낙 이슈가 되는 만큼 궁금해서 내용을 정리하고자 합니다. 우선 관련 내용은 백악관 내 ONCD(Office of the National Cyber Director)에서 작성된 문서를 기반으로 합니다. ONCD 문서 # A PATH TOWARD SECURE AND MEASURABLE SOFTWARE `President Biden’s National Cybersecurity Strategy` 에서는 두 가지 기본적인 변화를 제시합니다. 하나는 사이버 공간을 방어하는 책임을 균형있게 재조정하는 것이며, 다른 하나는 장기적인 사이버 보안 투자를 선호하는 `인센티브`를 재조정하는 것입니다. 여기서 나오는 `인센티브`는 세금이나 보조금 혜..

image