일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- github
- leetcode
- 프로그래머스
- ubuntu
- SW Expert Academy
- Git
- ChatGPT
- 맥북
- Kaggle
- 데이콘
- 프로그래머스 파이썬
- 편스토랑
- 더현대서울 맛집
- 자연어처리
- PYTHON
- dacon
- 파이썬
- 코로나19
- 우분투
- gs25
- 캐치카페
- programmers
- Baekjoon
- AI 경진대회
- 금융문자분석경진대회
- 백준
- hackerrank
- Real or Not? NLP with Disaster Tweets
- 편스토랑 우승상품
- Docker
- Today
- Total
목록
반응형
2021/06 (35)
솜씨좋은장씨
코딩 1일 1문제! 오늘의 문제는 퇴근하기 전 제 마음과 같았던 아! 입니다. 제목에 끌려 풀었는데 아주 쉬웠던 문제였습니다. 4999번: 아! 입력은 두 줄로 이루어져 있다. 첫째 줄은 재환이가 가장 길게 낼 수 있는 "aaah"이다. 둘째 줄은 의사가 듣기를 원하는 "aah"이다. 두 문자열은 모두 a와 h로만 이루어져 있다. a의 개수는 0보다 크거 www.acmicpc.net Solution def is_go_hospital(doctor, justin_bieber): is_go = "no" if len(doctor)
코딩 1일 1문제! 오늘의 문제는 백준의 연속구간 입니다. 2495번: 연속구간 여덟 자리의 양의 정수가 주어질 때, 그 안에서 연속하여 같은 숫자가 나오는 것이 없으면 1을 출력하고, 있으면 같은 숫자가 연속해서 나오는 구간 중 가장 긴 것의 길이를 출력하는 프로그램을 www.acmicpc.net Solution def get_longest_repeat_time(string): answer, cnt = 1, 1 for i in range(1, len(string)): if string[i] == string[i-1]: cnt += 1 if cnt > answer: answer = cnt else: cnt = 1 return answer if __name__ == "__main__": for _ in r..
작년 이맘때즈음 master/slave와 같이 주종 관계의 의미를 담고있는 용어들을 제거하는 추세에서 master를 기본 branch 이름으로 사용하던 GitHub도 지난 10월 1일 master에서 main으로 기본 branch 이름을 변경하였습니다. 이에 Git 2.28.0 버전부터 기본 branch 이름을 master에서 main으로 변경 할 수 있습니다. 방법은 아래와 같습니다. 1. Git 2.28.0 이상 버전으로 업데이트 먼저 Git을 2.28.0 버전 이상으로 업데이트해야합니다. 우분투에서 업데이트하는 방법 [Git] Ubuntu에서 git을 최신버전으로 업그레이드 하는 방법 최근 Github이 master branch에서 main branch로 이름이 바뀌면서 git도 업데이트가 필요했습..
코딩 1일 1문제 오늘의 문제는 백준의 대소문자 바꾸기 입니다. 2744번: 대소문자 바꾸기 영어 소문자와 대문자로 이루어진 단어를 입력받은 뒤, 대문자는 소문자로, 소문자는 대문자로 바꾸어 출력하는 프로그램을 작성하시오. www.acmicpc.net Solution def change_lower_upper(string): new_string = [] for char in string: if char.isupper(): new_string.append(char.lower()) elif char.islower(): new_string.append(char.upper()) return "".join(new_string) if __name__ == "__main__": string = input() print..
코딩 1일 1문제! 오늘의 문제는 알파벳 거리입니다. 5218번: 알파벳 거리 첫째 줄에 테스트 케이스의 수 (= str_1: distance = str(str_2 - str_1) else: distance = str(str_2 +..
코딩 1일 1문제! 오늘의 문제는 백준의 모음의 개수입니다. 10987번: 모음의 개수 알파벳 소문자로만 이루어진 단어가 주어진다. 이때, 모음(a, e, i, o, u)의 개수를 출력하는 프로그램을 작성하시오. www.acmicpc.net Solution from collections import Counter def count_vowel(string): vowels = ['a', 'e', 'i', 'o', 'u'] cnt = Counter(string).items() vowel_cnt = [count[1] for count in cnt if count[0] in vowels] return sum(vowel_cnt) if __name__ == "__main__": string = input() prin..
코딩 1일 1문제! 오늘의 문제는 백준의 IBM 빼기 1 입니다. 6321번: IBM 빼기 1 첫째 줄에 컴퓨터의 개수 n이 주어진다. 다음 줄부터 n개의 줄에는 컴퓨터의 이름이 주어진다. 컴퓨터의 이름은 최대 50글자이며, 알파벳 대문자로만 이루어져 있다. www.acmicpc.net Solution def ibm_subtract(string): computer_name = "" for char in string: if char == "Z": computer_name += "A" else: computer_name += chr(ord(char) + 1) return computer_name if __name__ == "__main__": for i in range(int(input())): string..
오랜만에 Dacon 대회를 도전해보면서 baseline 코드에 StratifiedKFold를 적용해서 결과를 내보고자 from sklearn.model_selection import StratifiedKFold Colab에서 위와 같이 import를 시도하였는데 ImportError: cannot import name 'delayed' from 'sklearn.utils.fixes' (/usr/local/lib/python3.7/dist-packages/sklearn/utils/fixes.py) 위와 같은 오류가 발생하였습니다. 이를 해결하는 방법은 다음과 같습니다. !pip install delayed delayed를 pip 를 활용하여 설치한 다음 런타임 다시시작을 한 다음에 다시 import를 하게..
코딩 1일 1문제! 오늘의 문제는 백준의 닉네임에 갓 붙이기 입니다. 13163번: 닉네임에 갓 붙이기 첫 번째 줄에는 닉네임의 수 N(1 ≤ N ≤ 100)이 주어진다. 두 번째 줄부터 N개의 줄에는 음절 단위로 쪼갠 닉네임이 주어진다. 각 줄은 알파벳 소문자와 공백만으로 이루어지며, 쪼갠 닉네임의 총 www.acmicpc.net Solution def make_god_name(name): name = name.split() name[0] = "god" return "".join(name) if __name__ == "__main__": for _ in range(int(input())): name = input() print(make_god_name(name)) Solution 풀이 먼저 입력 받은 ..
최근 회사에서 동료직원분이 gitmoji의 존재를 알려주셔서 한번 저도 사용해보기로 했습니다. 궁금한건 못참지! 🥳 🤩 gitmoji An emoji guide for your commit messages. gitmoji.dev 먼저 gitmoji를 설치해주었습니다. 저는 cli환경에서 사용할 예정이므로 brew를 통해 맥에 설치해 주었습니다. 1. gitmoji 설치 $ brew install gitmoji 또는 $ npm i -g gitmogi-cli 설치가 완료되면 위처럼 gitmoji --help 명령어를 실행하였을때 사용방법이 나옵니다. 2. 사용 방법 $ git add . 먼저 커밋할 파일을 add 합니다. $ git commit -m "add .gitignore" 그 다음 평소처럼 커밋을 할..
코딩 1일 1문제! 오늘의 문제는 백준의 소수인팰린드롬 입니다. 1990번: 소수인팰린드롬 151은 소수이면서 동시에 팰린드롬이기 때문에 소수인 팰린드롬이다. 팰린드롬이란 앞으로 읽어나 뒤로 읽으나 같은 수를 말한다. 예를 들어 1234는 앞으로 읽으면 1234지만, 뒤로 읽으면 4321이 되 www.acmicpc.net 첫번째 시도! def get_primary_num_eratos(N): nums = [True] * (N) for i in range(2, len(nums) // 2 + 1): if nums[i] == True: for j in range(i+i, N, i): nums[j] = False return [i for i in range(2, N) if nums[i] == True] def c..
코딩 1일 1문제! 오늘의 문제는 백준의 데이트 입니다. 1296번: 데이트 첫째 줄에 오민식의 영어 이름이 주어진다. 둘째 줄에는 좋아하는 여자가 몇 명인지 N이 주어지고, 셋째 줄부터 N개의 줄에 여자의 이름이 하나 씩 주어진다. N은 50보다 작거나 같고, 모든 이름은 www.acmicpc.net Solution def get_best_try(minsik_name, girl_names): scores = [] for girl_name in girl_names: L = girl_name.count("L") + minsik_name.count("L") O = girl_name.count("O") + minsik_name.count("O") V = girl_name.count("V") + minsik_n..
코딩 1일 1문제! 오늘의 문제는 백준의 오타맨 고창영 입니다. 2711번: 오타맨 고창영 첫째 줄에 테스트 케이스의 개수 T(1
코딩 1일 1문제! 오늘의 문제는 백준의 문자열입니다. 9086번: 문자열 입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 하나의 문자열이 주어진다. 문자열은 알파벳 A~Z 대문자로 이루어지며 알파벳 사이에 공백은 없으 www.acmicpc.net Solution def print_first_last(string): print(string[0] + string[-1]) if __name__ == "__main__": for _ in range(int(input())): string = input() print_first_last(string) Solution 풀이 맨 처음 입력 받은 수 만큼 문자열을 입력 받고 마지막 값을 접근하는 -1 인덱스를 ..
코딩 1일 1문제! 오늘의 문제는 백준의 저항입니다. 1076번: 저항 첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 색은 모두 위의 표에 쓰여 있는 색만 주어진다. www.acmicpc.net Solution def get_resistance(colors, resistance_info): return int(str(resistance_info[colors[0]][0]) + str(resistance_info[colors[1]][0])) * resistance_info[colors[2]][1] if __name__ == "__main__": resistance_dict = { "black": [0, 1], "brown": [1, 10], "red": [2, 100]..
코딩 1일 1문제! 오늘의 문제는 크로아티아 알파벳 입니다. 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net Solution def replace_croatia_alphabet_to_x(input_str): croatia_alphabet = ["c=", "c-", "dz=", "d-", "lj", "nj", "s=", "z="] for croatia_alpha in croatia_alphabet: input_str = input_str.replace(croatia_alph..
코딩 1일 1문제! 오늘의 문제는 백준의 등장하지 않는 문자의 합입니다. 3059번: 등장하지 않는 문자의 합 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성되어 있고, 문자열 S가 주어진다. S는 알파벳 www.acmicpc.net Solution def get_not_appearing_word_sum(input_list): input_str_ascii_list = set([ord(char) for char in input_list]) not_appearing = [num for num in range(ord('A'), ord('Z') + 1) if num not in input_str_ascii_lis..
코딩 1일 1문제! 오늘의 문제는 백준의 이름궁합 테스트 입니다. 17269번: 이름궁합 테스트 시윤이는 좋아하는 이성이 생기면 가장 먼저 이름궁합부터 본다. 이름궁합을 보는 방법은 간단하다. 먼저 이름을 알파벳 대문자로 적는다. 각 알파벳 대문자에는 다음과 같이 알파벳을 적는데 www.acmicpc.net Solution def get_compatibility_str(name1, name2, N, M): compatibility_str = "" temp = "" if N M: temp = name1[M:] for i in range(min(N, M)): compatibility_str = compatibility_str + name1[i] + name2[i] return compatibility_str..
코딩 1일 1문제! 오늘의 문제는 백준의 지영 공주님의 마법 거울 입니다. 11586번: 지영 공주님의 마법 거울 천나라 민호성의 지영 공주님은 매우 아름답다. 공주님 자신도 이 세상 그 누구보다 자신이 아름답다는 것을 알고 있다. 공주님은 자신의 아름다움이 세월의 저편으로 사라지는 것을 매우 두려 www.acmicpc.net Solution def magic_mirror(jiyoung_list, mind_num): if mind_num == 2: for i in range(len(jiyoung_list)): jiyoung_list[i] = jiyoung_list[i][::-1] elif mind_num == 3: jiyoung_list = jiyoung_list[::-1] return jiyoung_l..
코딩 1일 1문제! 오늘의 문제는 백준의 열 개씩 끊어 출력하기입니다. 11721번: 열 개씩 끊어 출력하기 첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다. www.acmicpc.net Solution input_string = input() string_length = len(input_string) for i in range(0, string_length, 10): print(input_string[i:i+10]) Solution 풀이 문자열을 입력받고 길이를 구한다음 10개씩 슬라이싱해서 출력하도록 하면 끝! 궁금한점 사실 이문제는 굳이 다른 방법으로도 풀어봤는데 왜 틀렸는지 잘 모르겠어서 올려보는 ..
코딩 1일 1문제! 오늘의 문제는 백준의 뒤집힌 덧셈입니다. 1357번: 뒤집힌 덧셈 어떤 수 X가 주어졌을 때, X의 모든 자리수가 역순이 된 수를 얻을 수 있다. Rev(X)를 X의 모든 자리수를 역순으로 만드는 함수라고 하자. 예를 들어, X=123일 때, Rev(X) = 321이다. 그리고, X=100일 때, Rev( www.acmicpc.net Solution def Rev(num): return num[::-1] if __name__ == "__main__": num1, num2 = input().split() print(int(Rev(str(int(Rev(num1)) + int(Rev(num2)))))) Solution 풀이 문자열을 거꾸로 뒤집는 방법인 [::-1] 을 문제에서 나온 함수이..
지난 6월 8일 새벽2시! WWDC 2021에서 아쉽게도 새로운 M칩이 탑재된 하드웨어는 발표하지 않았지만 새로운 iOS15, iPadOS 15, MacOS Monterery, WatchOS 8 이 공개되었습니다. M1이 탑재된 새로운 iPad Pro 12.9 5th를 구매한 저로서는 iPadOS에서 M1 성능을 마음껏 즐길수 있는 업데이트를 기대했지만! 아쉽게도 그런 큰 업데이트는 없어 새벽에 WWDC를 보면서는 많이 실망하였지만 실제로 업데이트 하고 나서는 그래도 조금 더 사용자가 편하게 느낄만한 요소들이 있었습니다. 항상 새로운 OS가 발표되면 바로바로 누구보다 먼저 베타를 설치해서 사용해봐야 직성이 풀리는 저는 WWDC가 끝나고 beta profile이 공개되는대로 그날 아침에 바로 애플워치를 제..
코딩 1일 1문제! 오늘의 문제는 백준의 윤년 입니다. 2753번: 윤년 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 www.acmicpc.net Solution year = int(input()) if year % 400 == 0 or (year % 4 == 0 and year % 100 != 0): print(1) else: print(0) Solution 풀이 먼저 년도를 입력받습니다. 입력받은 년도가 400배수 이거나 4의배수이면서 100의 배수가 아닐경우에는 1을 출력하도록 그렇지 않을 경우에는 0을 출력하도록 합니다. SOMJANG..
코딩 1일 1문제! 오늘의 문제는 최대공약수와 최소공배수 입니다. 코딩테스트 연습 - 최대공약수와 최소공배수 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 programmers.co.kr Solution from fractions import gcd def solution(n, m): answer = [gcd(n, m), n*m / gcd(n, m)] return answer SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE dev..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 다음 큰 숫자 입니다. 코딩테스트 연습 - 다음 큰 숫자 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니 programmers.co.kr Solution def solution(n): answer = 0 one_count = bin(n).count("1") for num in range(n+1, 1000001): num_one_count = bin(num).count("1") if one_count == num_one_count: answer = num break return answer Sol..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 구명보트 입니다. 코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr Solution def solution(people, limit): answer = 0 people.sort() start, end = 0, len(people) - 1 while start
유튜브를 보면서 SpaceInvaders-v0 을 Google Colab에서 따라해보던 중 import gym env = gym.make("SpaceInvaders-v0") 위의 코드를 실행하면 Exception Traceback (most recent call last) in () ----> 1 env = gym.make("SpaceInvaders-v0") 4 frames /content/atari-py/atari_py/games.py in get_game_path(game_name) 18 path = os.path.join(_games_dir, game_name) + ".bin" 19 if not os.path.exists(path): ---> 20 raise Exception('ROM is miss..
저는 스타벅스의 나무로 된 기다란 테이블에서 공부하는 것을 좋아하여 스타벅스를 자주 방문합니다. 테이블도 좋고 음료도 좋고 다 좋은데 딱 한가지 스타벅스 와이파이를 연결하면 너무너무너무너무 자주 끊기고 잘 연결이 되지 않는 경우가 너무 많이 있습니다. 특히 주로 개발을 하면서 서버에 접속을 하거나 Colab을 사용하여 공부를 할 때 이렇게 자주 끊기게 되면 그 스트레스는 정말.... 어마어마 합니다. 최근에 이렇게 너무 자주 끊기는 와이파이에 내 맥이 잘못된건가? 싶어 검색하던 중 와이파이 설정에서 프록시 설정을 변경해주면 끊기지 않고 사용할 수 있다는 글을 보고 믿음 반 의심 반의 심정으로 설정하고 일주일 째 사용하고 있는데 정말 끊기지 않고 사용이 가능하여 방법을 공유해보려 합니다. 먼저 스타벅스 와..
코딩 1일 1문제! 오늘의 문제는 프로그래머스의 2개 이하로 다른 비트 입니다. 코딩테스트 연습 - 2개 이하로 다른 비트 programmers.co.kr Solution def solution(numbers): answer = [] for number in numbers: if number % 2 == 0: binary_num = list(bin(number)[2:]) binary_num[-1] = "1" else: binary_num = bin(number)[2:] binary_num = "0" + binary_num one_idx = binary_num.rfind("0") binary_num = list(binary_num) binary_num[one_idx] = "1" binary_num[one_..
코딩 1일 1문제! 오늘의 문제는 백준의 직사각형에서 탈출 입니다. 1085번: 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형의 왼쪽 아래 꼭짓점은 (0, 0)에 있고, 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오. www.acmicpc.net Solution x, y, w, h = list(map(int, input().split())) print(min([x, y, w-x, h-y])) SOMJANG/CODINGTEST_PRACTICE 1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on..