분류 전체보기(218)
-
Golang으로 Python의 collections.Counter 구현하기
String 분석 시 유용하게 사용가능한 nanoCounter; Python의 collections.Counter를 Golang으로 구현해보자. 1. Golang과 Python의 차이점 Golang은 단순한 언어다. Golang에는 while문도 없고 상속도 없다. Golang에는 개발자가 편리하게 사용가능한 built-in 함수가 거의 없다. 반면 진정한 의미에서 객체지향 언어라 할 수 있는 Python이나 Dart와 같은 언어에서는, ‘이런 기능 있을 것 같은데’ 생각을 하는 순간 보통 있음을 바로 확인할 수 있다. 2. Python의 collections.Counter 문자열 분석 시, 우리는 종종 각 character가 몇 번씩 출현하는지, 가장 많이 등장하는 character가 무엇인지 알아야하..
2023.02.13 -
사일로 현상과 연대의식
“Only tribes held together by a group feeling can survive in a desert.” - by Ibn Khaldun through Muqaddimah 1. 시중은행과 토스의 차이 지금 이 글을 읽는 분들이라면 다들 한 번 이상쯤은 국내 모바일 은행 앱들을 사용해본 경험이 있을 것이다. 흥미롭게도, 사람들에게 사용하기 가장 편리했던 것이 어느 은행의 앱인가 묻는다면, 10명 중 8명 이상은 토스뱅크라고 대답한다. 그렇다면 토스뱅크의 앱과 다른 시중 은행들의 앱은 어떤 차이가 있을까? 우선 가장 크게 눈에 들어오는 차이점은 앱을 열었을 때 보이는 첫 메인화면의 다름이다. 토스뱅크 앱의 첫인상은 깔끔하고 직관적이며 사용자 친화적이다. 유저가 알고 싶어하는 정보를 한눈..
2023.02.09 -
백준 1157. 단어 공부 - Golang, Python
백준 1157 문제 보기 1. 문제 이해하기 알파벳 대소문자로 된 단어가 주어진다. 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력하라. 단, 가장 많이 사용된 알파벳이 여러 개일 경우, ?를 출력하라. (단어의 길이는 1,000,000 이하) 2. 아이디어 구상 간단한 문제다. 주어진 단어를 탐색하며 각 알파벳이 몇 개인지 세고 가장 많이 등장한 알파벳을 리턴하면 된다. Python으로 풀 경우 collections 모듈의 Counter를 이용하면 주어진 String에서 가장 많이 출현한 character를 쉽게 얻을 수 있다. input으로 단어를 받아 모든 알파벳을 대문자로 변환한 후, most_common()을 통해 최빈출 알파벳을 구한다. 만약 알파벳이 여러 개면 ?를 리턴해준다. from..
2023.02.06 -
기축통화 (Key Currency)
국제외환시장에서 금융거래 또는 국제결재의 중심이 되는 통화 1. 페트로 위안 2022년 12월 초, 중국이 원유 결제를 할 때 중국 위안화를 통화로 지불하고 싶다는 의사를 밝혔다. 비록 12월 말 중동 산유국들의 거절로 인해 이는 단순한 해프닝으로 끝났지만, 이 사건은 미국의 달러 패권에 도전하려는 시도를 했다는 것에 세간의 주목을 받았었다. 우리는 흔히 ‘기축통화‘, ’달러 패권’과 같은 용어들을 종종 사용하곤 한다. 과연 기축통화란 정확히 무엇인가? 달러 패권이란 무엇을 의미하는가? 2. 기축통화란? 기축통화란 무엇인가. 사실 기축통화의 정확한 정의와 어떤 화폐가 기축통화에 포함되는지에 관해서는 여전히 의견이 분분하다. 하지만 대부분이 동의하는 기축통화의 특징으로는 다음과 같은 점들을 들 수 있다. ..
2023.02.02 -
백준 1152. 단어의 개수 - Golang, Python
백준 1152 문제 보기 1. 문제 이해하기 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 문자열에 존재하는 단어의 개수를 출력하라. (문자열의 길이는 1,000,000 이하) 2. 아이디어 구상 아주 간단한 문제다. 주어지는 한 줄의 문자열을 받아 공백을 기준으로 split을 한 후에 개수를 count하면 된다. Python으로 풀 경우 코드 한 줄이면 끝난다. print(len(list(input().rstrip().split()))) 그러나 Golang으로 풀 경우, 조금은 더 생각을 할 필요가 있다. Golang에서 값을 읽어오는 방법은 여러가지가 존재한다. 그 중에 대표적으로 가장 많이 사용되는 2가지는 1. bufio.NewReader의 ReadString 2. bufio.NewScan..
2023.01.30 -
MOU (양해각서)
정식계약 체결에 앞서 조직간 양해사항을 확인하기 위해 작성하는 문서 1. 중동의 한국 투자 2023년 1월 15일, UAE가 한국 기업들에게 300억 달러(약 37조원)를 투자할 계획이라고 발표했다. 2022년 말, 한국 기업들은 사우디아라비아의 빈 살만 왕세자로부터 역시 300억 달러 투자를 약속 받았었다. 불과 몇 달 사이에 한화 약 70조원에 이르는 투자를 받을 수 있게 된 것이다. 그러나 이때 중요한 점은, 두 계약이 MOU (Memorandum of Understanding), 즉 양해각서였다는 점이다. 때문에 본 투자에 큰 의미를 부여하기는 아직 이르다는 목소리도 존재한다. 과연 MOU가 무엇이길래 그런 의견들도 나오는 것일까? 2. MOU란? MOU는 정식 계약을 체결하기 전 당사자 간 합의..
2023.01.26