전체 글 60

[백준/Python] 11576번: Base Conversion

📖 문제 링크 https://www.acmicpc.net/problem/11576 11576번: Base Conversion 타임머신을 개발하는 정이는 오랜 노력 끝에 타임머신을 개발하는데 성공하였다. 미래가 궁금한 정이는 자신이 개발한 타임머신을 이용하여 500년 후의 세계로 여행을 떠나게 되었다. 500년 후의 www.acmicpc.net 👩‍💻 문제풀이 문제 이해가 안되서 한참을 들여다봤다. 질문도 많은걸 보니 좀 불친절한 문제인듯하다...^^;; 어쨌든 간단히 입력된 값을 설명해보자면 아래와 같다. 첫번째 줄 : A는 17진법, B는 8진법을 사용한다. 두번째 줄 : A진법으로 나타낸 수의 자리수는 2개(ex. 216(17)일때 2와 16이라는 두개의 숫자로 이루어져있다는 말) 세번째 줄 : 자리..

알고리즘/Python 2022.02.08

[백준/Python] 1212번: 8진수 2진수

📖 문제 링크 https://www.acmicpc.net/problem/1212 1212번: 8진수 2진수 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. www.acmicpc.net 👩‍💻 문제풀이 백준 1373번: 2진수 8진수 문제와 같은 방식이다. https://shalog.tistory.com/38 [백준/Python] 1373번: 2진수 8진수 (파이썬 진법 변환 요약) 📖 문제 링크 https://www.acmicpc.net/problem/1373 1373번: 2진수 8진수 첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다. www.acmicpc.net 👩‍💻 문제풀이 파이썬 int함수에는 1.. shalog.tistory...

카테고리 없음 2022.02.08

[백준/Python] 1373번: 2진수 8진수 (파이썬 진법 변환 요약)

📖 문제 링크 https://www.acmicpc.net/problem/1373 1373번: 2진수 8진수 첫째 줄에 2진수가 주어진다. 주어지는 수의 길이는 1,000,000을 넘지 않는다. www.acmicpc.net 👩‍💻 문제풀이 파이썬 int함수에는 10진법 변환 기능이 있다. int(문자열로 변환된 숫자, 해당 숫자의 진법) 을 넣으면 10진법으로 변환된다. print(int('1010', 2)) 위와 같이 입력하면 10이 출력된다. 1010(2)를 10진법으로 변환한 수다. 문제의 조건은 2진수를 10진수가 아닌 8진수로 변환하는 프로그램이므로, 파이썬의 oct함수를 다시한번 사용한다. 여기서 파이썬 진법 함수 정리! bin() : 2진수 oct() : 8진수 hex() : 16진수 2진수 ..

알고리즘/Python 2022.02.08

[백준/Python] 2745번: 진법 변환

📖 문제 링크 https://www.acmicpc.net/problem/2745 2745번: 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 👩‍💻 문제풀이 진법변환2(11005번)문제를 거꾸로하면 된다고 생각했는데, 생각보다 오래걸린 문제이다. 이렇게 10진법으로 돌려놓는 방식을 그대로 구현했다. 다만 문자열인지 숫자인지 구분하기위해 isdigit()함수를 사용하였고, 문자열인 경우 55를 빼주어 문제의 조건을 맞추었다. ✅ 최종 코드 from curses.ascii import isdigit n, b = input()...

알고리즘/Python 2022.02.08

[백준/python] 11005번 : 진법 변환 2

📖 문제 링크 https://www.acmicpc.net/problem/11005 11005번: 진법 변환 2 10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 👩‍💻 문제풀이 맞긴 맞았는데, 속도가 느려서(140ms가 나옴) 다시 풀어본 문제이다. 비슷한 풀이라고 생각했는데, 다른 풀이와 속도가 2배 정도 차이가 난다. 처음 코드는 알파벳 대문자를 리스트로 먼저 만든 후 진행했다. (ascii_uppercase 사용) 다른 분들의 풀이를 보니 리스트로 만들지 않고, 나머지를 구함과 동시에 아스키코드로 계산해 바로 배열에 넣어주었다. ..

알고리즘/Python 2022.02.08

[백준/python] 9613번: GCD 합

📖 문제 링크 https://www.acmicpc.net/problem/9613 9613번: GCD 합 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 < n ≤ 100)가 주어지고, 다음에는 n개의 수가 주어진 www.acmicpc.net 👩‍💻 문제풀이 수를 배열에 입력받고, 모든 쌍의 경우의 수를 조회하기 위해 이중 for문을 만들었다. for문이 돌아갈때마다 gcd를 구하고, 합을 sum에 저장한 후 출력! ✅ 최종 코드 from math import gcd t = int(input()) arr = 0 sum = 0 while t!=0 : arr = list(map(int, input()...

알고리즘/Python 2022.02.08

Spring 개념 간단 정리

✅ 왜 Spring을 사용하는가? 스프링은 객체지향 언어의 다형성을 극대화해서 이용할 수 있게 도와준다. 자바 언어 기반의 프레임워크 객체지향언어가 가진 강력한 특징을 살리는 프레임워크(추상화, 캡슐화, 상속, 다형성 등) 유연하고 변경이 용이한 점. 부품을 갈아끼우듯, 컴포넌트를 쉽고 유연하게 변경하면서 개발 가능(다형성) 다형성의 중요성 ex) 역할 vs 구현 자동차를 바꿀때마다 면허를 다시 따는 것이 아니듯, 어떤 자동차를 구매하더라도 운전자는 무한히 운전이 가능 공연 무대에서, 각 역할에는 배우 대체가 언제든 가능하다. 키보드, 마우스 등의 인터페이스 이러한 특징은 변경이 편리하고 유연하다는 특징을 지닌다. 클라이언트는 대상의 역할만 알면 된다. 클라이언트는 내부 구조를 몰라도 된다. 구조가 변경..

Back-end/Spring 2022.02.05

H2 데이터베이스 설치 방법(Mac OS)

1. 다운로드 아래의 링크에서 1.4.200 Platform-Independent.Zip을 다운로드한다. (빨간색 박스) 2.0.206의 최신 버전이 있으나, 일부 기능이 정상 동작하지 않는다고 한다. https://www.h2database.com/html/download-archive.html Archive Downloads www.h2database.com 2. 압축 풀기 아래와 같이 터미널에서 open 또는 unzip 명령어를 사용해도 되고, Finder에서 더블클릭하여 원하는 폴더에 압축을 풀어줘도 된다. open h2-2019-10-14.zip 3. 권한 설정 윈도우는 권한 설정이 필요 없으나 맥은 권한을 주어야 파일을 열 수 있다. 압축을 푼 h2폴더의 bin폴더로 진입하여 아래와 같은 명령..

Back-end/Spring 2022.02.04

[백준/Python] 1158번: 요세푸스 문제

📖 문제 링크 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 👩‍💻 문제풀이 큐(Queue) 자료구조를 사용해야한다고 생각했는데, 막상 풀려고하니 잘 풀리지않아 블로그를 참고했다. 알고보니 간단히 리스트로도 구현이 가능했다. 인덱스를 원형으로 돌고있는것처럼 계산해주면 된다. (모듈러 연산) 또한 이 문제는 출력이 특이했다. 그냥 print("")를 하면 부등호 옆에 공백이 함께 출력된다. print문의 특징이므로 이를 처리해주어야한다. 이때 자주쓰던 end=""로는 처리가 불가능하다. '\n'를 제거하는 것이 아니기 때문이다. 따라서..

알고리즘/Python 2022.01.31

[백준/Python] 1406번: 에디터

📖 문제 링크 https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net 👩‍💻 문제풀이 파이썬 리스트 명령어의 시간 복잡도에 대해 정확히 공부하지 못해서, 먼저 리스트를 사용해 구조만을 파악해보고자 했다. cursor라는 변수에 명령어의 조건에 따라 값을 더하고 빼주었고, 입력과 삽입, 지우기 모두 cursor의 인덱스에 따라 진행하였다. 코드는 아래와 같다. # import sys word = list(sys.stdin.readline().rstrip(..

알고리즘/Python 2022.01.31