분류 전체보기 118

Cross entropy Loss에서 gradient 구하기

딥러닝 개론 수업 과제를 하면서 꽤나 까다롭게 느껴져서 정리하고자 올린다.일단 gpt를 보고 어느정도 도움을 받기는 했는데 gpt는 softmax function과 sigmoid 함수 관계를 자꾸 설명하지 못해서 내가 손으로 직접 풀었다. 1. Softmax Function  2. Cross Entrophy Loss  Softmax Fuction의 미분은 같이 나오게 되는데, 이는 각각에 대해 편미분을 생각해보면 조금 편하다. 우선 j와 k가 다를 때는 분수함수의 미분을 사용해야 하는데, k에 대해서 생각을 해보면 1/f 꼴의 미분이라는 것을 알 수 있는데,e^x 의 미분은 자기 자신이여서,  f'/f = softmax(sk)가 나온다 j = k 일때는 더 쉽다. 시그모이드 함수를 g라고 하자. g(x)..

#32484 Headline Heat

뇌풀이인 이유는 시험기간이라 구현을 할 시간이 없기 때문이다...까먹기전에 여기에 기록한다.  https://www.acmicpc.net/problem/32484학회에서 예선 대비 팀 연습했을 때 만났던 문제이다. 아호코라식을 몰라서 실제 연습때는 던졌는데 롸선배의 풀이 세션에서 깨달음을 좀 얻어서 작성.여기서 S=10^6,N=10^5정도로 본다. 우선.... 이 문제는 여러 문자열 매칭을 하는 부분을 빼고 풀어보자.연결되는 부분들에 대해 간선을 이어서 유니온 파인드를 한다고 생각하면 동치임을 쉽게 알 수 있다.즉 같은 유파의 문자열들은 같은 횟수만큼 나왔어야 한다. 따라서 각 유파에 대해서, 가장 등장횟수가 많은 값 x, 등장횟수가 최대인 문자열의 개수 y, 그 유파의 크기 z를 관리하면항상 x==y이..

1주차 풀이

https://dsstar.tistory.com/53여기 있는 셋입니다.감사합니다.  #11709 Toliets우선 정렬을 하기 이전에, 언제 불가능한 상태가 될까를 생각해본다..총 2N명이 있는데, N초 안에 완수하기 위해서는 한번도 놓치면 안된다는 뜻이다.즉 매초마다 2개의 화장실이 전부 채워져 있어야 한다. 그런데 M은 공용화장실만 사용 가능하므로, 아직 사용하지 않은 M의 개수만큼의 시간은 최소한으로 걸린다.따라서 현재 시간 + 남은 M의 개수 > N이 되버리면, 불가능하다. 문제 상황이 어떻게 흘러가는지를 생각해보자. 만약 특정 시점에 화장실이 전부 비어져 있고, M이 연속되게 나오는 경우를 보자..ex) MMM.....MF~그럼, M의 연속된 개수가 x라고 하면 x초 동안, 공용화장실에는 M이..

scpc 2024 Final Round 후기

scpc는 2021년부터 출전했고, 2022,2023년도에 Final까지 올라갔었습니다. 2022년은 탈 실력이 아니었고, 2023년은 막차탈 실력은 됐었다고 생각하고, 실제로 탈 수 있었는데 놓쳐서 너무 아쉬웠습니다. scpc가 ps하는 잉여 인간들에게는 매우 중요한 대회입니다. 대기업인 삼성에서 매우 큰 혜택이 포함된 삼성SW멤버십에 가입시켜주기 때문입니다. 제 팀원이자 서강대 소멤 goat셨던 검굿님이 많이 알려주셨습니다... 이번 대회때 점수가 괜찮아 기대하고 있는 심정입니다. 제발 상 타게 해줘~~ 대회는 13시에 시작했습니다. [13:09] 1. 시간여행 AC 파이널 올 실력이라면 다 풀수 있는 문제입니다. 전 min세그를 박아서 풀었는데, 매우 빠르게 풀었다고 생각했는데 이미 10명 넘게 풀..

#28434 Same Range 뇌풀이

뇌풀이인 이유는 구현에 실패했기 때문이다.대략 140줄 정도 짜고 ide 껐다. 정해는 특수한 형태의 세그먼트 트리를 사용하면 풀 수 있다고 한다.문제를 분할정복으로 해결해보자. 각 분할하는 문제마다 결국 mid를 넘는 배열들에 대해서만 문제를 풀어주면 된다. 예제41 2 1 33 1 2 1로 문제를 설명해보면 이렇게 mid로 나눠버린다. 그러고 양쪽 방향으로 prefix max,min suffix max,min을 구한다. 그럼 문제는 이렇게 환원되는데 왼쪽 (Amax, Amin,Bmax,Bmin)원소와 오른쪽 (Amax,Amin,Bmax,Bmin)원소를 적절히 골라서 합쳤을 때,max=min이 되어야 한다. 물론 모든 쌍을 순회화면 O(n^2)이므로 빠르게 할 방법을 생각해봐야하는데,max의 suffi..

#1 24.07.28 업솔빙 현황

Codeforces Round 959 sponsored by NEAR (Div. 1 + Div. 2) 여기 F,G  한줄평:F는 좋고 어려운문제가 맞는듯실제 버츄얼 돌때도 전부짝수로 어떻게 만들지에서 막혔는데 풀이보니까 좋은 문제는 맞다.체감티어는 한 플1? 정도인듯  G는 별로였다.문제가 별로라기보다는 G에 나와서 별로였다.보자마자 풀이가 나왔는데, 설마 이게 맞겠어? 하고 풀이보니까 맞았다.골1~플5 정도 dp인듯....  SWERC 2023-2024  사실상 3시간 연습을 했는데....C에서 너무 박았다. C.난 매우 매우 별로였다. 아 이런 dp 문제 만나면 시간복잡도 증명도 못하겠고 하... 쨌든 매우 빠르게 상태가 준다는 것은 쉽게 아니까 (대충 5번에 5개씩 빠지고 시작 개수가 m=50개 정..

하나더 2024.07.28

하나 더 풀기

전역까지 19일.... 이고 일과시간마다 문제푸는 현재 생활중에 생각난 프로젝트.보통 콘테 중에 x문제를 풀었으면 x+1문제까지 고민하다가 못 풀고 넘어간다.업솔빙을 x+1까지 하기만 해도 goat다.나는 진짜 업솔빙을 절대 안하는 스타일인데 실력이 안 느는거 같아서 당분간 x+2까지 하는 프로젝트를 해봐야겠다.아 그리고 이건 비단 ps 만이 아니라 모든 공부에 필요한 듯...

하나더 2024.07.24

#31421 호떡 뒤집기

https://physicsmathcoumputer.tistory.com/82 이런 식의 구간 쿼리의 문제들은 차이를 살펴보면 풀린다. arr[x]를 x-1번째 호떡과 x번째 호떡이 다르다면 1, 같다면 0으로 두자. 즉 arr[x]=v[x]^v[x-1] 2번 쿼리는 다음과 같이 해석된다. 1.arr[x]=0인 (x>=2)를 고른다. 만약 arr[1]+arr[2]+...+arr[x]가 2로 나누어 떨어진다면 arr[1]과 arr[x]에 1을 xor한다. 만약 arr[1]+arr[2]+...+arr[x]가 2로 나누어 떨어지지 않는다면 arr[x]에 1을 xor한다. 이걸 이용해 새로운 문제로 치환하면 쉽게(?) 풀린다. 힌트는 arr[1]을 고를 수 없다는게 포인트이다. (즉 arr[1]을 어떻게 목표에..

카테고리 없음 2024.02.19

#1608 스타대회

이 문제를 그래프로 해석해서 풀어보자. 각 학생은 다음 두 집합중에 하나에 속하게 된다. A = {우승가능성이 있는 학생} B = {어떻게 해도 항상 패배하는 학생} 우리의 목표는 A에 속한 학생들을 모두 구하는 것이 목적이다. 천적관계에 대해서 간선을 만든다고 생각해보자. 즉 x가 항상 y를 이긴다면 x->y인 모든 간선을 추가한다고 생각해보자. 첫번째 아이디어는 다음과 같다. A에 속해있는 임의의 정점을 a, B에 속해있는 임의의 정점을 b라고 해보자. 우선 연결그래프가 아닐 경우는 무조건 모든 정점이 되므로 넘어가자. (이건 쉬우니 생략하겠다...) 1. b에서 a로 가는 간선은 존재할 수 없다. 쉬운 증명: a는 이길 가능성이 있는데, a를 b가 이긴다는 것은 b도 이길 가능성이 있다는 뜻. 직관..

cce 2023

https://cce.cstec.kr/ 생애 최초로 ctf대회를 나갔다. 참가 확정이 최근에 나서 해킹 공부를 1주일정도 전부터 시작했는데 재밌더라 근데 개어렵다 ㅋㅋ ps보다 시작하는 난이도가 높은 것 같다. 1학년때 해본다고 까불다가 접었었는데 그때보다 전공지식이나 사고가 깊어져서 그래도 할만한 것 같다. 공공부문으로 출전했다. 선임 + 주무관님 포함 4인팀으로 했다 dreamhack.io로 pwnable만 공부하고 갔는데 난이도 어렵더라 ㅜ 그래도 한문제 나랑 팀원이랑 같이 상의해서 해결하고 나머지 한 문제 다른 팀원분이 풀어서 적당히 2솔해서 1솔이상 팀들중에 절반이상은 한 것 같아서 좋았다. 오랜만에 팀대회나가니까 재밌긴 하더라. 첫 ctf대회로서 느낀점은... 문제는 20문제인데 본선컷이 3~..

CTF공부 2023.06.10