반응형

전체 글 45

[99클럽 코테 스터디 5일차 TIL] 백준 2470번 두 용액

문제 : https://www.acmicpc.net/problem/2470    풀이우선 입력 받은 데이터를 정렬을 한 후 가장 왼쪽과 가장 오른쪽에서부터 데이터를 차례대로 선택해가면서 합이 가장 0에 가까운 값일 때의 두 데이터를 선택할 수 있도록 코드를 작성했습니다.초기값을 어떻게 세팅할까 고민을 했었는데, 처음에는 INF = sys.maxsize  를 사용하려다가 맨 왼쪽과 맨 오른쪽 값을 초기값으로 세팅해도 문제가 없다고 판단하여 그렇게 세팅을 했습니다.import sysread = sys.stdin.readlinen = int(read())arr = list(map(int, read().split(' ')))arr.sort()left = 0right = n-1answer = abs(arr[lef..

알고리즘 2025.01.17

[99클럽 코테 스터디 4일차 TIL] 이분 탐색

문제 : https://www.acmicpc.net/problem/2343   풀이이분 탐색을 활용하는 방법이진 이진 탐색은 배열 내부의 데이터가 정렬되어 있어야만 사용할 수 있는 알고리즘 입니다. 따라서 sort() 메서드를 사용하여 정렬을 우선 해줘야 합니다. 그리고 보통 변수 3개 (start, mid, end)를 사용하여 탐색하게 됩니다.이분 탐색을 사용할 경우 시간 복잡도는 O(logN)입니다. 단계마다 탐색 범위를 반으로 나누는 것과 동일하므로 O(logN)이라는 시간 복잡도를 가지게 됩니다. import sysread = sys.stdin.readlineN, M = map(int, read().split())data = list(map(int, read().split()))# 이분 탐색 값 ..

카테고리 없음 2025.01.16

[99클럽 코테 스터디 3일차 TIL] 이분 탐색

문제 : https://www.acmicpc.net/problem/11663   풀이이분 탐색을 활용하는 방법이진 이진 탐색은 배열 내부의 데이터가 정렬되어 있어야만 사용할 수 있는 알고리즘 입니다. 따라서 sort() 메서드를 사용하여 정렬을 우선 해줘야 합니다. 그리고 보통 변수 3개 (start, mid, end)를 사용하여 탐색하게 됩니다.이분 탐색을 사용할 경우 시간 복잡도는 O(logN)입니다. 단계마다 탐색 범위를 반으로 나누는 것과 동일하므로 O(logN)이라는 시간 복잡도를 가지게 됩니다. import sysread = sys.stdin.readlinedef find_start(locations, target): start, end = 0, N - 1 while start  T..

알고리즘 2025.01.16

[99클럽 코테 스터디 2일차 TIL] 이분 탐색 - 백준 1654번 문제 (랜선 자르기)

문제 : https://www.acmicpc.net/problem/1654  풀이이분 탐색을 활용하는 방법이진 이진 탐색은 배열 내부의 데이터가 정렬되어 있어야만 사용할 수 있는 알고리즘 입니다. 따라서 sort() 메서드를 사용하여 정렬을 우선 해줘야 합니다. 그리고 보통 변수 3개 (start, mid, end)를 사용하여 탐색하게 됩니다.이분 탐색을 사용할 경우 시간 복잡도는 O(logN)입니다. 단계마다 탐색 범위를 반으로 나누는 것과 동일하므로 O(logN)이라는 시간 복잡도를 가지게 됩니다. import sysread = sys.stdin.readlineK, N = map(int, read().split())data = list()for i in range(K): data.append(i..

알고리즘 2025.01.14

[99클럽 코테 스터디 1일차 TIL] 집합과 이분 탐색

문제 : https://www.acmicpc.net/problem/2776 풀이1. set 함수를 사용하는 방법 set 함수는 순서가 없는 자료형입니다. 따라서 set을 사용하면 중복된 값이 제거가 됩니다. set을 사용함으로써 시간 복잡도가 O(N)이 됩니다.t = int(input())for _ in range(t): n = int(input()) note1 = set(map(int,input().split())) m = int(input()) note2 = list(map(int,input().split())) for num in note2: if num in note1: print(1) else: ..

알고리즘 2025.01.13

[쉘 스크립트]위치 매개변수 받아와서 쓰기

쉘 스크립트에서 매개변수를 받아오는 방법은 '$1', '$2', '$3', ...와 같이 사용할 수 있습니다. 이러한 변수들을 "위치 매개변수"라고 합니다. 예를 들어, 다음과 같은 간단한 쉘 스크립트를 생각해봅시다. #!/bin/bash echo "첫 번째 매개변수: $1" echo "두 번째 매개변수: $2" 이 스크립트를 실행할 때 매개변수를 주면 해당 매개변수들이 '$1', '$2'와 같이 전달됩니다. 예를 들어, 스크립트를 'test.sh'라는 이름으로 저장하고 실행한다고 가정하겠습니다. ./test.sh Hello World 위와 같이 실행하면 출력은 다음과 같습니다. 첫 번째 매개변수: Hello 두 번째 매개변수: World 따라서, 쉘 스크립트 내에서 '$1','$2','$2', ... ..

카테고리 없음 2023.07.25

[pytorch error] ValueError: Expected more than 1 value per channel when training, got input size torch.Size ...

안녕하세요 전자둥이 입니다. 학습을 진행 했을 때 분명 문제가 없던 모델이고 데이터셋만 바꿨을 뿐인데 해당 에러가 발생하는 것을 목격했습니다. ValueError: Expected more than 1 value per channel when training, got input size torch.Size ... 저의 경우 해당 에러가 발생한 이유가 (데이터셋의 개수 / batch_size) 를 했을 때 나머지가 1이 나오게 되면 저런 에러가 발생했습니다. ex) 사용한 데이터 개수가 13개 batch_size를 2 로 진행하게되면 위에서 언급한 에러가 발생하며 해당 에러를 발생 하지 않으려면 batch_size를 5를 주면 문제없이 학습이 진행됩니다. 이 글로 에러를 쉽게 해결하셨으면 좋겠습니다. 감사..

카테고리 없음 2022.08.12

[C언어] 남아 있는 입력 버퍼 비우는 방법

안녕하세요 전자둥이입니다. C언어로 코드를 작성할 때 scanf를 사용하 실 때 주의할 점이 있습니다. 예제를 통해서 살펴보겠습니다. #define _CRT_SECURE_NO_WARNINGS #include int main(){ char a,b; scanf("%c", &a); scanf("%c", &b); printf("%c\n", a); printf("%c\n", b); return 0; } ** 결과 a를 입력하자마자 위 결과처럼 끝나는 모습을 확인 할 수 있습니다. b변수에는 어떠한 값도 입력하지 않았는데 왜 입력을 받지않고 끝났을까요? 우선 b변수에 어떤 값이 들어가있는지 확인해보겠습니다. #define _CRT_SECURE_NO_WARNINGS #include int main(){ char a,..

C-language 2022.07.31

Reducing Network Agnostophobia 논문 리뷰 (Entropic Open-set Loss)

안녕하세요 open-set Loss라는 주제를 가지고 논문 리뷰를 진행하려고 합니다. https://arxiv.org/pdf/1811.04110.pdf (작성중..) ** Code class Entropic_Open_set_Loss(): def __init__(self, class_names): self.class_num = len(class_names) self.Cross_entropy = nn.CrossEntropyLoss() def __call__(self, output, target_batch): output_softmax = F.softmax(output, dim=1) loss = 0 for i, target in enumerate(target_batch): if target == self.cl..

AI 2022.07.31

[C언어] 배열 array

안녕하세요 전자둥이입니다. 이번 시간에는 배열에 대해서 간단히 설명하고자 합니다. * 배열을 사용하는 이유 : 동일한 성격의 데이터를 다수 표현할 수 있습니다. 제일 이해하기 쉬운 건 직접 배열을 선언하고 실제 코드에서 사용을 해보면 좋습니다. 바로 Code 보면서 설명해드리겠습니다. 1. 초기화를 하며 배열을 선언 int arr[8] = {3,6,8,3,4,7,3,4}; 이해하기 쉽도록 위에서 선언한 배열을 그림으로 표현해봤습니다. - 배열은 인덱스 번호가 0번부터 시작됩니다. - 배열 선언할 때 arr[8] 여기서 8은 배열의 총크기를 말합니다. -> 인덱스 번호는 0번부터 시작하기 때문에 총 크기를 8로 선언했을 때 마지막 인덱스 번호는 7이 됩니다. - int 형의 배열을 선언하였기에 해당 배열의..

C-language 2022.07.27
반응형