본문 바로가기

분류 전체보기

(91)
[Python] 프로그래머스 - 섬 연결하기 문제https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이최소 신장 트리 자료구조와 그래프 알고리즘과 관련된 문제이다. 신장 트리(Spanning Tree)란 주어진 그래프에서 최소한의 간선을 사용해 전체 노드를 포함하는 트리를 의미하며,다음과 같은 특징을 갖는다.V개의 노드와 E개의 엣지를 갖는 그래프 G가 주어질 때, 신장 트리는 V-1개의 엣지만을 사용한다사이클이 존재하지 않아야 한다.최소한의 간선을 사용해야 하므로, 사이클이 발생하면 신장 트리가 아니게 된다.주어진 전체 연결 그래프 G에..
[Python] 함수의 인자 전달 시, 인자 값의 변경 Python을 사용해 함수를 만들어 실행시킬때, 어떤 경우에는 함수의 전달 인자로 사용된 값이 변하지 않고,어떤 경우는 따로 return을 하지 않아도 전달 인자에 사용된 값이 변하는 경우가 있다. C언어의 경우에는 전달 인자로 값 자체를 전달하는 Call-by-Value방식과 포인터 값을 전달하는 Call-by-Reference방식이 명확하게 구별되어있지만,https://sdsf1225.tistory.com/118 C언어 - (12) : 포인터와 함수함수에 대해 복습해보면, 함수를 선언할 때 'return type', 'function name', 'input(type)' 등의 요소가 필요했다.int Func(int num) // int : return type / Func : name / int nu..
[Python] 프로그래머스 - 줄 서는 방법 문제https://school.programmers.co.kr/learn/courses/30/lessons/12936 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이제한 사항으로 인해, 단순히 전체 경우의 수를 모두 구한 뒤에, 그 중에서 k번째 경우를 출력하는 것은 불가능하다. 줄 세우는 방법에 대해 구할 수 있는 방법을 생각해보면, Permutation(순열)을 떠올릴 수 있다.그리고 문제에서 줄을 세우는 방식은 주어진 예시와 같이, 가장 낮은 번호부터 시작해 가능한 경우의 수를 모두 세우고, 그 다음 번호로 넘어가는 방식이다.예시1주어진 예시인 n=3인 경우에가장 먼저 1로부터 시작해 줄을 세우..
밑러닝 - (2) 퍼셉트론의 조합만으로도 어떤 복잡한 함수도 표현 가능하지만('Universal Approximation Theorem'),퍼셉트론의 조합만을 사용하기에는 적절한 parameter(가중치, 임계치)를 일일이 설정해줘야 한다는 단점이 존재한다. 이러한 단점에 대해, 신경망은 적절한 parameter값을 학습을 통해 스스로 찾아가는 성질을 가져 대처 가능하다.신경망신경망은 크게 세가지 구조로 이루어져 있다.입력층(Input Layer)Input으로 들어오는 데이터에 해당되는 Layer은닉층(Hidden Layer)Input 데이터에 대한 가중합(+Activation Fucntion) 과정이 거쳐 만들어진 결과에 해당되는 Layer출력층(Output Layer)하나의 신경망에서 모든 과정을 거쳐 최종적으로 계산..
[Python] 프로그래머스 - 보석 쇼핑 문제https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제에서 요구하는대로 알고리즘을 구현하는 것 자체는 어렵지 않은 문제이지만, 제한 사항(시간/메모리)를 고려해알고리즘을 구현하는 것이 까다로운 유형의 문제이다. 주어진 `gems`의 최대 길이가 100,000이기 때문에 이중 for 문을 사용해 전체 `gems`를 탐색하게 된다면 $O(e^{10})$의 복잡도가 요구되어 시간 초과가 발생할 것이 자명하므로, 탐색 수를 최소화하면서 문제에서 요구하는 바를 수행하는 것이 중요하다풀이풀이 1 (나의..
[Pytorch] torch.Tensor.masked_fill https://pytorch.org/docs/stable/generated/torch.Tensor.masked_fill_.html torch.Tensor.masked_fill_ — PyTorch 2.5 documentationShortcutspytorch.org공식 document에 따르면 `torch.Tensor.masked_fill_`의 구버전으로, `Tensor.masked_fill_(mask, value)`의 형태로 사용 가능하다. `mask`에 해당되는 Tensor의 값을 `value`로 바꿔 return시켜주는 메소드이다.
[Python] 프로그래머스 - 하노이의 탑 문제https://school.programmers.co.kr/learn/courses/30/lessons/12946 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이나의 풀이def solution(n): answer = [] def func(n): # n층의 결과값 만드는 함수 # n-1층 h = len(floor[n-1])//2 # n-1층의 절반 h1 = floor[n-1][:h] h1 = [h1[0][::-1]]+h1[1:] # 첫번째 원소 반전 ..
C언어 - <math.h> 원주율 값 사용하기원의 넓이를 구하는 문제를 풀면서, 처음 보는 헤더파일 선언이 있어서 찾아봤다.#define _CRT_SECURE_NO_WARNINGS // warning 문구 뜨지 않게#include #define _USE_MATH_DEFINES #include #ifndef M_PI // M_PI가 정의되어 있지 않으면,(if not)#define M_PI 3.14159265358979323846 // M_PI를 다음과 같이 정의#endif // if문 종료위의 헤더파일을 불러오는 소스 코드를 번역해보면 다음과 같다. 세번째줄 부터 살펴보면,`_USE_MATH_DEFINES`를 정의하고(`#define _USE_MATH_DEFINES`)`math.h`를 불러온다(`#include `)`math.h`..