본문 바로가기
728x90

분류 전체보기423

[NLP] Bag of Words Bag of words란 무엇인가? 말을 직역하면 단어들의 가방이라는 뜻이다. 이는 단어들을 한 가방(공간)안에 넣는 다는 것이다. 우리는 수학적으로 공간안의 위치를 벡터를 통해 나타낼 수 있었다. 그러면 대충 유추하건데 단어들을 가방(공간)에 넣음으로써 단어를 벡터로 표현할 수 있을 것이다. ※ Word Embedding: 단어를 특정한 차원 벡터로 만드는 것 어떻게 벡터로 표현할 것인가? 예시를 하나 들어보자. 'I love NLP' 라는 문장이 있다고 하자. 그러면 우리는 Vocabulary:{"I", "love", "NLP"} 로 나타낼 수 있으며 ● I ; [1, 0, 0] ● love : [0, 1, 0] ● NLP : [0, 0, 1] 로 벡터를 나타낼 수 있다. 각 벡터끼리 거리는 $\sq.. 2023. 1. 18.
[python] 백준 2529 부등호 https://www.acmicpc.net/problem/2529 2529번: 부등호 두 종류의 부등호 기호 ‘’가 k개 나열된 순서열 A가 있다. 우리는 이 부등호 기호 앞뒤에 서로 다른 한 자릿수 숫자를 넣어서 모든 부등호 관계를 만족시키려고 한다. 예를 들어, 제시 www.acmicpc.net 문제 해결 부등호를 k개 뽑기 때문에 숫자는 서로 다른 k+1개의 숫자를 뽑게 된다. (0~9) 따라서 [0,1,2,3,4,5,6,7,8,9] 에서 k+1개를 뽑는 순열을 쓴 다음 주어진 식을 만족하면 정답 리스트에 추가하는 식으로 문제를 해결했다. 마지막에 max, min 두번 찾는 것보다 sort()한번 한 다음 최댓값은 맨 뒤 원소를 꺼내고, 최솟값은 맨 앞 원소를 꺼내는 식으로 문제를 해결하였다. CO.. 2023. 1. 17.
[python] 백준 15661 링크와 스타트 https://www.acmicpc.net/problem/15661 15661번: 링크와 스타트 첫째 줄에 N(4 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에 S가 주어진다. 각 줄은 N개의 수로 이루어져 있고, i번 줄의 j번째 수는 Sij 이다. Sii는 항상 0이고, 나머지 Sij는 1보다 크거나 같고, 100 www.acmicpc.net 문제 해결 팀을 정하는 것부터 하나 하나 다 해봐야 하기 때문에 상당히 시간복잡도가 클 것 같다.(팀원 수도 양수라는 것 외에 정해지지 않음) 결국 팀원 하나하나 정하는 것을 재귀를 통해서 정리하고 계산을 하여 최솟값을 구한다. 파이썬으로는 시간초과가 나와서 pyp3로 풀었다. CODE import sys input = sys.stdin.readline.. 2023. 1. 16.
[python] 백준 14501 퇴사 https://www.acmicpc.net/problem/14501 14501번: 퇴사 첫째 줄에 백준이가 얻을 수 있는 최대 이익을 출력한다. www.acmicpc.net 문제 해결 i번째 일의 상담을 했을 때 k일이 걸린다면 i+k-1일까지는 상담을 못한다. 따라서 i+k일의 상담부터 할 수 있다. i+k일의 상담을 할 수 있어도 만족스럽지 않으면 안하고 i+k+1일로 넘어갈 수 있다. 상담은 n일 까지 끝내야 하므로 주의한다. (아래 코드는 0일부터 n-1일로 했다. 그러므로 이해할 때 -1일을 더하면 된다.) CODE import sys input = sys.stdin.readline n = int(input()) schedule = [list(map(int, input().split())) fo.. 2023. 1. 15.
728x90