보호되어 있는 글입니다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/l4rOS/btrlfdTg1Ns/WMfot0BtrTCMgX3fOba2Q1/img.png)
https://www.acmicpc.net/problem/1005 1005번: ACM Craft 첫째 줄에는 테스트케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다. 첫째 줄에 건물의 개수 N과 건물간의 건설순서 규칙의 총 개수 K이 주어진다. (건물의 번호는 1번부 www.acmicpc.net dfs를 사용해서 거꾸로 탐색하는 방법을 사용했다. 문제를 보면 자신에게 오는 간선이랑 연결되어있는 점까지의 delay가 가장 큰 값을 골라야 된다. 그러므로 마지막부터 거꾸로 탐색하면서 max값을 저장한 뒤 현재 노드의 값을 더해서 출력해주면 된다. 문제에 있는 그림으로 예시를 들면 4번 노드에서 2,3번 노드로 탐색을 하고 2,3번 노드에서 1번노드로 탐색을 한다. 1번 노드에서는 갈 수..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bVx78q/btrj3MpmsJl/vjiHnqskNhiXlk8krAvfUk/img.png)
영재원 산출물로 Surviv.io를 모티브로 한 게임을 만들었다. 아직 미완이지만 적당한 플레이는 할수 있게 해 놨고 이게임의 특징은 아두이노랑 연결해서 아두이노 조이스틱으로 사용이 가능하다는 것이다. 시작했을 때 start를 누르고 방향키로 원하는 것을 설정하여 스페이스를 누르면 된다. 가끔씩 에러가 뜨는 경우가 있는데 다시 시작하면 잘 작동하니 크게 신경 쓸 필요는 없다. 게임할 때 이미지 파일이 모두 있어야 되므로 깔 때 한 번에 다 까는 걸 추천한다. 댓글에 게임에 추가했으면 하는거, 개선할 점을 써주면 적극 반영할 것이니 많은 관심 부탁한다. 아두이노 회로이다. 있는 사진이 이거밖에 없어서 만드는걸 추천하지는 않는다. 코드 보고 만드는게 더 쉬울수도있다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/nsmWH/btrgB568vjB/KEPjUrSehGvk11ILRdDSv1/img.png)
https://www.acmicpc.net/problem/17668 17668번: 시험 $N$명의 학생이 수학 부문과 정보 부문이 있는 시험을 쳤다. $i$번째 ($1 \le i \le N$) 학생은 수학에서는 $S_i$점을, 정보에서는 $T_i$점을 받았다. T교수와 I교수는 각 학생이 시험을 통과할지 말지를, www.acmicpc.net 이 문제 세그 스위핑이라는 방법이 있다고는 하지만 그 방법이 아닌 2차원 머지 소트 트리를 박는 방법으로 했다. 방법은 생각보다 간단한다. A에서 이분 탐색을 해 입력값 이상인 값들의 위치에 있는 B에서 이분 탐색을 또 하고 거기서도 이상인 값들의 위치 중 합이 입력값 이상인 값을 찾아주면 된다. 말만 간단한거 같지만 이 방법을 그대로 머지 소트 트리에 해주면 된다...
영재원에서 만들었던 게임이다 간단한 벽돌깨기 게임이다. 이컴에는 프로세싱이 없어서 완성은 못했지만 그래도 게임 구성은 다 있어서 플레이 정도는 할 수 있다. int angle=0; float ps=10; int x=0; int y=0; int time=0; int[][] block = new int[25][25]; int [][] item = new int[25][2]; int score=0; int dead=0; void setup() { size(800,800); angle=1; x=400; y=200; ps=2; frameRate(200); for(int i=0;i
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cSx2W0/btrfoStB41E/bZrKq59jNtV6WFcdmsG8l0/img.png)
https://www.acmicpc.net/problem/7812 7812번: 중앙 트리 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫 줄에는 트리의 정점의 수 n이 주어진다. (1 ≤ n ≤ 10,000) 각 정점은 0번부터 n-1번까지 번호가 붙여져 있다. 다음 n-1개 줄 www.acmicpc.net 이 문제는 전에 올렸던 사무실 이전과 같은 방식의 문제이다. https://joseph0528.tistory.com/77 BOJ 16121(사무실 이전)풀이 https://www.acmicpc.net/problem/16121 16121번: 사무실 이전 첫 번째 줄에 모든 사무실 후보에 대한 모든 직원의 출근 경로 길이의 제곱을 모두 합한 값을 998,244,353으로 나눈 나..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/dD1tMw/btre1a2W9j6/M1WgbClbTqWA2TrHn9Qlmk/img.png)
영재원에서 프로세싱을 배울 때 핑퐁 벽돌깨기 게임을 만들었었는데 그때 스와이프 벽돌깨기 게임도 만들어 보고 싶어서 만들게 되었다. 기본 게임 배경은 이렇게 생겼다 기존 게임처럼 구현해놨고 위치만 조금 변경시켰다. 이렇게 초록색 아이템을 먹었을 경우 아래로 떨어진다. 마지막에는 파란색 공의 위치로 이동한다. 기능은 원래 게임과 같으니 설명은 안 하겠다 문제점이라고 하면 벽을 뚫는다는 점과 튕겼을 때 이상한 위치로 간다는 거, 이렇게 2가지이다. 이 버그들은 추후에 고칠 예정이다. import sys import random import pygame import time import math from tkinter import * from tkinter import messagebox from pygame...
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/Feqtt/btreMvrrUsf/z2H2n1H1pxZ7fNGodCkZqK/img.png)
https://www.acmicpc.net/problem/16121 16121번: 사무실 이전 첫 번째 줄에 모든 사무실 후보에 대한 모든 직원의 출근 경로 길이의 제곱을 모두 합한 값을 998,244,353으로 나눈 나머지를 출력한다. www.acmicpc.net 티어에 비해? 간단했지만 구현 때문에 말아먹은 문제이다. 인접한 두 점의 거리는 모두 1이기 때문에 제곱수의 규칙을 알면 쉽게 할 수 있다. 1부터 5까지만 표시해보자면 1^2=1,2^2=4,3^2=9,4^2=16,5^2=25 나열하면 1 4 9 16 25 이렇게 나오는 걸 알 수 있다. 여기서 규칙을 찾아보면 3,5,7,9 씩 커진다. 즉 전에 커진 수+2만큼을 전수에 더하면 (n+1)^2를 구할 수 있는 것이다. 그렇기 때문에 전 노드에서..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cOSZXl/btrd0F3LhTb/sWIs2z3vn9rgkgCUedyZXk/img.png)
할 게 없어서 다쿤이라는 분이 만드신 Codeforces coin보고 솔브드 코인도 있으면 좋겠다 싶어서 계획만 해두다가 이제야 만들기 시작 앞으로 Solved_Coin 개발일지?(개발일지라고 해야될지는 모르겠지만)를 계속 올릴 예정 이번에는 딱히 한건 없고 대충 db만 구현 솔브드 코인이라고 하면 레이팅으로만 해서 계속 올라가는 그래프만 나오겠지라고 할 수 있지만 레이팅, 클래스, 문제수, 운 하고 나중에 추가 예정인 것들까지 해서 하락도 있는 그래프를 만들 예정 레이팅, 클래스, 문제수가 떨어지면 하락할 수는 있지만 그럴 일이 자주 있지는 않기 때문에 운의 요소도 넣음 + 주식 처럼 등록되어있는 사람들 중 그 사람 주식을 사는데 필요한 비용을 내고 주식을 사는 방식도 추가 예정 비용은 추후 정함 1대..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/d4rrLz/btrdVjk5uoS/bGuKF8lEN87OO9tBeOYyG0/img.png)
https://www.acmicpc.net/problem/2405 2405번: 세 수, 두 M n개의 정수 A[1], A[2], …, A[n]이 있다. 서로 다른 세 정수 i, j, k에 대해서 a = A[i], b = A[j], c = A[k]라 하자. 세 수의 중위(Median)값은 정렬했을 때 가운데에 오는 수가 된다. 세 수의 평균(Mean)값은 (a+b+c) www.acmicpc.net 생각보다 간단한 문제다 평균과 중윗값의 차가 최대한 크게 하려면 일정한 중윗값에 대해서 평균이 최대한 크거나 작을 때의 차 중 가장 큰 차를 구하면 된다. 값을 정렬했을때 양끝 값은 중윗값이 될 수 없으니 제외해주고 1~n-1에서 i번째 값이 중위 값이라고 했을 때 평균값이 가장 작게 나오게 하려면 i번째 값+i..
- Total
- Today
- Yesterday
- 누적 합
- codeforces
- 수학
- 다이나믹 프로그래밍
- 잡봇
- 정렬
- 그래프 탐색
- 최소 스패닝 트리
- 이분매칭
- A Dance of Fire and Ice
- 그리디 알고리즘
- 이분 탐색
- BOJ
- 완전 탐색
- 알고리즘
- C++
- 개발
- KOI
- 느리게 갱신되는 세그먼트 트리
- 자료 구조
- 그래프 이론
- 자료구조
- 트리
- 깊이 우선 탐색
- 선분 교차 판정
- discord bot
- 구현
- Python
- 세그먼트 트리
- 트리에서의 다이나믹 프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |