본문 바로가기
반응형

Programming106

[백준 / Python] 3036번 링 문제 https://www.acmicpc.net/problem/3036 3036번: 링 출력은 총 N-1줄을 해야 한다. 첫 번째 링을 제외한 각각의 링에 대해서, 첫 번째 링을 한 바퀴 돌리면 그 링은 몇 바퀴 도는지 기약 분수 형태 A/B로 출력한다. www.acmicpc.net 해결 코드 def gcd(a, b): if a < b: a, b = b, a # a가 크다 while True: if a % b == 0: return b else: a, b = b, a % b n = int(input()) data = list(map(int, input().split())) for i in range(1, n): tempgcd = gcd(data[0], data[i]) print('%s/%s' % (dat.. 2023. 9. 2.
[백준 / Python] 28293번 자릿수 문제 https://www.acmicpc.net/problem/28293 28293번: 자릿수 첫째 줄에 정수 $a$, $b$가 공백으로 구분되어 주어진다. $(1 \le a \le 10\,000; 1 \le b \le 10\,000\,000)$ $a^b$의 자릿수가 $10\,000$ 또는 $9,999$로 시작하지 않는 입력만 주어진다. www.acmicpc.net 해결 코드 import math a, b = map(int, input().split()) answer = math.log10(a) * b answer = int(answer) print(answer + 1) a^b의 자릿수를 구하는 문제이다. log10을 이용한다면 쉽게 풀 수 있다. 2023. 8. 8.
[백준 / Python] 28353번 고양이 카페 문제 https://www.acmicpc.net/problem/28353 28353번: 고양이 카페 첫째 줄에 정수 $N$과 $K$가 공백으로 구분되어 주어진다. $(1 \leq N \leq 5\,000;$ $1 \leq K \leq 10^9)$ 둘째 줄에는 각 고양이의 무게를 의미하는 $N$개의 정수 $w_1, w_2, \dotsm, w_N$이 공백으로 구분되어 주어 www.acmicpc.net 풀이 n, k = map(int, input().split()) data = list(map(int, input().split())) p1, p2 = 0, n - 1 data.sort() answer = 0 #p1이 작은쪽 p2가 큰쪽 while p1 < p2: if data[p1] + data[p2] 2023. 7. 22.
[백준 / Python] 14912번 숫자 빈도수 문제 https://www.acmicpc.net/problem/14912 14912번: 숫자 빈도수 자연수 n (1 ≤ n ≤ 100,000)과 한 자리 숫자 d(0~9)가 첫째 줄에 주어진다. www.acmicpc.net 풀이코드 n, d = map(int, input().split()) answer = 0 d = str(d) for i in range(1, n +1): data = str(i) for c in data: if c == d: answer += 1 print(answer) 단순 반복문제이다. 2023. 7. 17.
[백준 / Python] 1181번 단어 정렬 문제 https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 풀이 n = int(input()) data = [] for i in range(n): data.append(input()) data = set(data) data = list(data) data.sort(key = lambda x : (len(x), x)) for i in data: print(i) 이번 문제는 문자열들이 주어졌을때 1. 중복을 제거한다. 2. 길이순으로 정렬한다.. 2023. 7. 9.
[백준 / Python] 2941번 크로아티아 알파벳 문제 (2941번 크로아티아 알파벳) https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 해결 코드 / python data = input() N = len(data) answer = 0 i = 0 while True: if i >= N: break if i + 3 2023. 7. 2.
[Django / BackEnd] 장고 간단 정리 및 팁 다른 사람에게 보여줄 목적으로 각잡고 정리하는 글이 아닌 장고 공부를 마치고 오랜시간이 지나고 잊을 때쯤 다시 보면서 기억할 수 있는 cheat-sheet 느낌의 글이다. (장고 주제를 정리하는 메모장느낌) 1. 장고 세팅 pip 명령어 세팅하고 필요하다면 가상환경도 설정한뒤 pip install django pip install django-admin 로 django를 설치한다. 2. 장고 새 프로젝트 django-admin startproject [프로젝트이름] 3. 장고 서버 시행 기본적으로는 다음의 명령어를 정리한다. python manage.py runserver 4. [ .env ] 장고를 공부를 하거나 배포를 할때, settings.py에 있는 secret-key나 데이터베이스 정보등을 그대.. 2023. 6. 6.
[React] 리액트 개발 팁 / 정리 모음집 머리말 다음은 내가 리액트를 공부하면서 들은 팁, 또는 개발하면서 얻은 팁들을 정리한 것들이다. 당연한 것이라고 생각되는 리액트 상식도 정리할 것이다. 팁 모음집이라고 생각해도, 리액트의 자잘한 정리 모음집이라고 생각해도 좋다. 공부하면서 계속해서 이 글을 업데이트 할 예정이다. 리액트 간단 정리 및 팁 props로 전달해야 할 함수를 만들 때에는 useCallback을 사용하여 함수를 감싸기 리액트 라우터를 사용할땐 태그를 사용하지말고 Link 컴포넌트를 사용하기 (a 태그를 이용하여 페이지를 이동하면 브라우저에서 페이지를 새로 불러온다) (import {Link} form 'react-router-dom';) 리액트는 다음의 조건에서 리랜더링이 된다. 1. 자신이 전달받은 props 변경 2. 자신의.. 2023. 6. 3.
[백준 / Python] 11399번 ATM 문제 https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 코드 n = int(input()) data = list(map(int, input().split())) data.sort() for i in range(1, n): data[i] = data[i - 1] + data[i] print(sum(data)) 풀이 모든 사람들의 기다리는 시간의 합을 최소로 하게 하려면 인출하는데 가장 적은 시간이 걸리는 사람이 먼저 ATM을 사용하면 된다. ex. 2명일때 ATM 5분 걸리는 .. 2023. 5. 27.
[백준 / Python] 1026번 보물 문제 https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 소스코드 n = int(input()) a = list(map(int, input().split())) b = list(map(int, input().split())) a.sort() b.sort() b.reverse() s = [0] * (n + 2) for i in range(n): s[i] = a[i] * b[i] print(sum(s)) A[x1] * B[x1] + A[x2] .. 2023. 5. 12.
728x90
반응형