본문 바로가기
728x90
반응형

알고리즘109

[백준] 1003번: 피보나치 함수 - python https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net DP로 접근하는 코드 사실 이 코드는 비효율적이다.. DP로 작성하긴 했으나, 항상 처음부터 다시 구현하는 단점이 있다. 이를 해결하기 위해선 값의 인덱스를 저장하거나, 가장 큰 입력을 먼저 받은뒤 값을 꺼내기만 하면 된다. 그러나 통과가 되길래.. 일단 패스.. 집가고 싶어서.. n = int(input()) for i in range(n): dp = [[1,0], [0,1], [1,1], [1,2]] m = int(input()) if m < len(dp): print(*dp[m]) con.. 2024. 3. 20.
[백준] 5430번: AC - python https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net deque를 사용하여 뒤집기를 잘 구현한는게 핵심인듯한 문제 뭐 접근방법은 딱히 없고 구현을 빡세게 했다. 열심히 짯는데... 도대체 왜 시간초과인것인가.. from collections import deque n = int(input()) for _ in range(n): com = input() k = int(input()) arr = input() arr = arr[1:-1] if arr: arr = list(map(int, arr.split(",.. 2024. 3. 20.
자연어처리 - cos유사도, Word2Vec, Doc2Vec cos유사도 서로의 벡터를 계산하는 공식. 선대시간에 신나게 했었다. 같을수록 1에 가까우며 다르면 0에 가깝다. tf, tf-idf 먼저 제공된 데이터로 단어장을 만든 후 각 단어의 빈도수를 체크하여 나온 값을 문장들의 벡터를 생성한다. 여기서 idf는 너무 자주나오는 단어는 변별성이 없다고 판단하여 감소키니는 차이가 있다. import numpy as np from numpy import dot from numpy.linalg import norm import pandas as pd # Cosine Simiarity def cos_sim(A, B): return dot(A, B)/(norm(A)*norm(B)) doc1 = np.array([0,1,1,1]) doc2 = np.array([1,0,1,.. 2024. 3. 20.
[백준] 11652번: 카드 - python https://www.acmicpc.net/problem/11652 11652번: 카드 준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지 www.acmicpc.net 기본적인 정렬 문제 for문과 if문을 잘 활용하면 만들수 있었다. 사실 hashMap으로 작성하면 더 빠르고 깔끔하게 작성할 수 있을 것 같았는데 for문 마려워서 작성했다. n = int(input()) arr = [] for i in range(n): arr.append(int(input())) max = -100 max_card = 0 cnt = 1 arr.sort() for i in.. 2024. 3. 19.
728x90
반응형