본문 바로가기

백준6

[백준] 1371: 가장 많은 글자 (feat. EOF) - Swift 노션에서 보기 1371: 가장 많은 글자 🙋‍♀️ 백준 1371번 의 풀이 www.notion.so 문제 1371번: 가장 많은 글자 첫째 줄부터 글의 문장이 주어진다. 글은 최대 5000글자로 구성되어 있고, 공백, 알파벳 소문자, 엔터로만 이루어져 있다. 그리고 적어도 하나의 알파벳이 있다. www.acmicpc.net 영어에서는 어떤 글자가 다른 글자보다 많이 쓰인다. 예를 들어, 긴 글에서 약 12.31% 글자는 e이다. 어떤 글이 주어졌을 때, 가장 많이 나온 글자를 출력하는 프로그램을 작성하시오. 입력 첫째 줄부터 글의 문장이 주어진다. 글은 최대 5000글자로 구성되어 있고, 공백, 알파벳 소문자, 엔터로만 이루어져 있다. 그리고 적어도 하나의 알파벳이 있다. 출력 첫째 줄에 가장 많이 나온.. 2021. 1. 24.
[백준] 1052: 물병 - Swift 풀이 노션에서 보기문제지민이는 N개의 물병을 가지고 있다. 각 물병에는 물을 무한대로 부을 수 있다. 처음에 모든 물병에는 물이 1리터씩 들어있다. 지민이는 이 물병을 또 다른 장소로 옮기려고 한다. 지민이는 한 번에 K개의 물병을 옮길 수 있다. 하지만, 지민이는 물을 낭비하기는 싫고, 이동을 한 번보다 많이 하기는 싫다. 따라서, 지민이는 물병의 물을 적절히 재분배해서, K개를 넘지 않는 비어있지 않은 물병을 만들려고 한다. 물은 다음과 같이 재분배 한다.먼저 같은 양의 물이 들어있는 물병 두 개를 고른다. 그 다음에 한 개의 물병에 다른 한 쪽에 있는 물을 모두 붓는다. 이 방법을 필요한 만큼 계속 한다.이런 제약 때문에, N개로 K개를 넘지않는 비어있지 않은 물병을 만드는 것이 불가능할 수도 있다. 다.. 2021. 1. 10.
[백준] 10757: 큰 수 A+B - Swift 풀이 노션에서 읽기 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력: 첫째 줄에 A와 B가 주어진다. (0 < A,B < 10^10000) 출력: 첫째 줄에 A+B를 출력한다. 풀이 10의 10000승이면 Int64의 최댓값(9,223,372,036,854,775,807)을 한참 넘어가는 범위이다. 그래서 처음에는 18자리씩 끊어서 배열에 넣고 차례로 더하는 방식으로 풀어 보았다. 그랬더니 두 수의 자릿수가 다를 때의 처리가 너무너무 복잡해서 도저히 해결되지 않았다. 그래서 1자리 씩 끊는 것으로 방법을 바꿨다. let arr = readLine()!.split(separator: " ") let a = splitNum(String(arr[0])), b = splitNu.. 2021. 1. 10.
[백준] 1076: 저항 - Swift 노션에서 보기 문제 전자 제품에는 저항이 들어간다. 저항은 색 3개를 이용해서 그 저항이 몇 옴인지 나타낸다. 처음 색 2개는 저항의 값이고, 마지막 색은 곱해야 하는 값이다. 저항의 값은 다음 표를 이용해서 구한다. 예를 들어, 저항에 색이 yellow, violet, red였다면 저항의 값은 4,700이 된다. 입력: 첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 색은 모두 위의 표에 쓰여 있는 색만 주어진다. 출력: 입력으로 주어진 저항의 저항값을 계산하여 첫째 줄에 출력한다. 풀이 달리 어려울 게 없는 문제인데 아차차 포인트가 두개 정도 있었다. import Foundation let first = readLine()!, second = readLine()!.. 2021. 1. 6.