후기 : 수학대회라 2솔만 하자 했었는데 3솔이나 해서 기분이 좋았지만 b랑 c에서 어이없는 실수를 너무 해서 아쉽다. D는 배웠는데 생각이 안 나서 못 푼 게 아쉽고 일단 3솔해서 좋지만 좀 아쉬운 대회였다. 풀이 : A 더보기 A는 요약하면 우승할 수 있는 사람 수다. 그러므로 정렬을 한 다음 가장 작은 값들을 제거하고 남은 값들은 모두 우승할 수 있다. import sys,math,queue #sys.setrecursionlimit(10**9) input=sys.stdin.readline t=int(input()) for _ in range(t): n=int(input()) l=list(map(int,input().split())) l.sort() g=0 for i in range(1,n): if ..
오랜만에 버추얼을 돌려봤는데 2 솔밖에 못했다. 바로 풀이를 쓰자면 A import sys input=sys.stdin.readline t=int(input()) for _ in range(t): n=int(input()) l=list(map(int,input().split())) r=[0]*200 s=0 for i in range(n): r[l[i]]+=1 s=max(s,r[l[i]]) print(s) 그냥 가장 많이 중복되는 개수를 출력하면 끝이다. B import sys input=sys.stdin.readline t=int(input()) def p(x): #print(x) if int(x)
A번 풀이 이문제는 w*h크기의 종이를 2로 나누어 떨어질때까지 나누면서 개수가 n개이상이 나올수있는지 판단하는 문제이다. 처음에 이문제를 식으로 할려다가 계속 틀려서 그냥 반복문으로 해주었더니 맞았다;; a=int(input()) for i in range(a): b,c,d=map(int,input().split()) s=1 while 1: if b%2!=0:break s*=2 b//=2 while 1: if c%2!=0:break s*=2 c//=2 if d>s: print("NO") else: print("YES") B번 풀이 이문제는 입력으로 주어진 배열들의 값을 똑같게 둘로 나눠야되는데 이때 값을 나누면 안된다. 처음에 개수로 판단하는 코드를 짰다가 2번째에서 틀렸는데 생각해보니 만약 1 1 1..
- Total
- Today
- Yesterday
- Python
- 이분 탐색
- discord bot
- 알고리즘
- 다이나믹 프로그래밍
- 자료구조
- 그래프 이론
- 최소 스패닝 트리
- 깊이 우선 탐색
- codeforces
- 개발
- 트리에서의 다이나믹 프로그래밍
- 자료 구조
- A Dance of Fire and Ice
- 선분 교차 판정
- C++
- 구현
- 정렬
- 세그먼트 트리
- KOI
- 잡봇
- BOJ
- 완전 탐색
- 그래프 탐색
- 느리게 갱신되는 세그먼트 트리
- 그리디 알고리즘
- 이분매칭
- 트리
- 누적 합
- 수학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |