오늘 코테 문제를 풀어보려고 했으나... 시험공부가 더 우선이여서 조금 시도해 보다가 말았다..일단 큰 문제를 작은 문제로 나누는 연습을 해야겠다. 머리가 안돌아가.. 오늘은 Clustering에 대해서 공부했다. 생각하는 키워드들은..K-MeansPAMCLARAAGNESDIANACHAMELEON까지.. 내일 블로그 글로 써봐야겠다. 야호
🔗 1641. Count Sorted Vowel Strings 엄... 처음에 최대한 빨리 끝내고 싶어서 itertools의 product를 사용한 다음에 조건에 안맞는 것들을 없애려고 했는데product가 n이 33만 되어도 굉~장히 느렸다. 그래서 시간초과.. 두번째로 생각한 방법은뒤에서 부터 하나씩 정해서 그 다음 앞에 것은 뒤에것보다 작은(vowel 배열에서 앞에 위치한) 글자여야 한다는 것이다.사실 vowel도 귀찮아서 걍 [0, 1, 2, 3, 4] 로 했다.그랬더니 통과했다. 속도는 느려도 메모리는 경쟁력 있었다. 아마 속도는 memorization을 써야하지 않나.. 싶다.class Solution: def __init__(self): self.answer = None ..
오늘은 시험 공부하느라 문제는 풀려고 시도했다가 한시간 안에 못풀어서 포기했다...대신~~~강의 보면서 블로그에 정리해봤다.딥러닝 강의 들으면서 이렇게 명쾌했던 적이 있던가....!너무 재밌었다2024.06.06 - [딥러닝] - MIT 6.S191 (2023): Deep Generative Modeling (~41:25 VAE) MIT 6.S191 (2023): Deep Generative Modeling (~41:25 VAE)딥러닝 수업 기말을 위해 공부를 해야해서해당 영상을 참고해 공부해 봤다. 근데 정말 잘 가르친다... 강추..모든 정보와 슬라이드는 "MIT 6.S191 (2023): Deep Generative Modeling"을 참고했다.MIT 6.S191 (2023):daily-progra..
🔗 프로그래머스 -구명보트 어제에 이어 Greedy 문제였는데 잘 못하는 것임이 확실하다! Greedy하게 결정하는 방법을 잘 모르겠다. 하지만 해봐야지!사실 오늘은 조금 cheating을 했다.😏 구명 보트를 가장 적게 사용하면서 승객을 옮겨야 하는데 생각한 알고리즘이제일 무거운 사람을 뽑아서 그 사람이랑 가장 많이 태워서 보내는 것이었는데 너무 복잡하게 생각했다.그저 무거운 사람이랑 같이 갈 수 있는 제일 가벼운 사람이 있으면 보내고 아니면 그냥 무거운 사람만 보내는 방법이었다. 이렇게 간단하게 생각하는 방법을 좀 연습해야겠다....from collections import dequedef solution(people, limit): answer = 0 people.sort() p..
오늘은 내일 발표를 준비하느라 코테를 준비하지 못했다...하지만 논문은 읽었지.. Fuzzing에 대해서 공부중인데 오늘은 아래 논문을 읽었다. 3까지.. fuzzing을 LLM을 이용해 하는 방법이다. tencent 연구원들이 썼다. 굉장히 최근에 나왔다.이 논문을 읽으면서 또 읽어야 하거나 봐야하는 논문과 링크를 정리해 봤다. Prompt Fuzzing for Fuzz Driver Generationhttps://arxiv.org/abs/2312.17677 Prompt Fuzzing for Fuzz Driver GenerationCrafting high-quality fuzz drivers not only is time-consuming but also requires a deep understand..
🔗 LeetCode - 2415. Reverse Odd Levels of Binary Tree이제 deque 쓰는 건 완전 익숙해짐!이 문제는 홀수 층에 있는 노드들을 reverse 해주는 것인데 내가 쓴 방법은처음에 트리를 돌면서 각 층에 해당하는 노드를 리스트에 저장해 놓고두번째로 트리를 돌면서 각 층에 해당하는 노드를 pop 해줘서 reverse 되도록 했다. 그리고 리트 코드는 리스트가 아니라 객체(TreeNode)가 input, output이다.근데 사이트로 테스트를 하자니 제한도 있고 시간도 오래걸려서이전에 삽질하다가 만들어 놓은 리스트 -> 트리 로 만드는 코드를 유용하게 썼다. 야호from collections import dequeclass Solution: def reverseO..
🔗 LeetCode - 1302.All Paths from Source to Target오늘은 아주 조금 수월했는데 왜 되는 지 모르겠지만 통과한 감이 있어 다시 살펴봤다.일단 이번 문제는 DAG(Directed Acyclic Graph)를 끝 노드까지 도착할 수 있는 경로를 다 찾는 것이었다. DFS를 쓰면 해결될거 같았지만 속도랑 메모리도 신경쓰고 싶어서 queue를 사용했다. INPUT : 배열, 각 인덱스가 노드 번호이고 그 내부 배열은 그 노드와 연결된 노드들이다. OUPUT: 처음부터 끝 노드까지 순서에 맞게 나열되어 있어야 한다. 2차원 배열 일단 첫번째 배열은 따로 처리해 줬다. 시작 노드 이므로 여기에서 OUTPUT 배열을 하나씩 배정해 줬다. 그리고 이 노드를 queue에 넣었다. ..
🔗 LeetCode - 1302. Deepest Leaves Sum😇 헤매지 않는 날이 없군!우선 첫번째로 문제를 잘못 이해해서 node 자체가 들어오는 지 몰라서... int array가 들어오면 그것을 node로 만들고 tree로 예쁘게 만들어 줬는데!! 이미 treenode 형태로 input이 들어와서 쓸모가 없어짐....코드 보기# Definition for a binary tree node. import queue from collections import deque class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left ..