
이 문제는 초기 문자열과 만들어야하는 문자열이 주어질 때, 각 위치의 스티커를 떼고 붙이고, 구매 등의 방법을 사용해 만들어야하는 문자열이 초기 문자열의 부분 문자열이 되도록 하는 최소값을 구하는 문제이다. 문제 설명만 봤을 때는 어려워 보일 수도 있지만 문자열의 길이가 500이 안되기 때문에 모든 경우를 탐색하면서 최소값을 계산해주면 된다. 부분 문자열을 만들 수 없는 경우 -1을 출력하라고 되어있는데, 이는 구매할 수 있는 스티커 중에 부분 문자열에 필요한 스티커가 없을 때 -1을 출력해주면 된다. 부분 문자열을 만들기 위해서 부분 문자열에 해당될 부분 중, 바꿔야 될 부분의 스티커를 모두 떼준다. 그후 뗀 스티커와 다른 범위에 있는 스티커까지 고려해서 어느걸 고르는 것이 최소값이 되는지 판단해주면 ..

이 문제는 입력된 9개의 숫자 중 합이 100이 되는 7개의 숫자를 고르면 되는 문제인데, 이를 다시 생각해보면 나머지 두명의 값을 제외했을 때 100이 되는 경우를 고르는 문제로 바꿀 수 있다. 이 경우 2중 반복문을 통해 두 수의 합을 전체 합에서 뺀 값이 100이 된다면 해당 두값을 제외한 나머지 값들을 출력해주면 된다. 문제가 스페셜 저지이므로 답이 여러개가 될 수 있기 때문에 여러가지 답이 나올 수 있지만 맨처음에 나온 값을 출력해주면 된다. n=9 l=[int(input())for i in range(n)] l.sort() s=sum(l) nanjaeng=[0,0] for i in range(n): for g in range(n): if i!=g and s-100==l[i]+l[g]: nanj..

학교 수업량 우연화에 참여하여 제작한 프로젝트이다. 내용은 이름 그대로 개체의 다양성에 변화를 주면 생태계 평형이 어떻게 깨지는지 관찰하고 이에 대한 해결책을 직접 해봄으로서 생태계 다양성을 보전하는 자세를 기르자는 탐구보고서 이다. 이를 위해 파이썬으로 간단하게 시뮬레이션을 구현하였고, 이를 이용해 남획, 외래종 유입 등 다양한 방법에 대해 생태계를 관찰하는 활동을 하였다. https://github.com/python-programmer1512/Ecosystem_Diversity_Change_Simulation GitHub - python-programmer1512/Ecosystem_Diversity_Change_Simulation Contribute to python-programmer1512/Ec..

위 그림처럼 예선에 합격했다. 6월에 예선 주제가 올라온 걸 확인하고 주제를 선정하고 7월에 시험을 끝낸 후에 본격적인 개발을 진행하였다. 개발한 프로젝트는 경구약 안전 복용 서비스인데, 이름 그대로 경구약(우리가 먹는 일반적인 약들을 말함)을 먹는데 어려움이 있는 사람들을 위해 flask로 제작한 웹사이트에서 약에 대한 이미지를 입력받으면 약을 인공지능과 OCR을 사용하여 판별하고 결과를 웹사이트에서 텍스트와 음성으로 출력해 주는 서비스이다. 학교 행사와 공부, 개발을 같이 하다 보니 시간이 많이 부족했고, 특히 에러 때문에 코드를 여러 번 갈아엎어서 시간이 더욱 없었다.(일주일 동안 에러 때문에 진도를 못 낸 적 있음) 같이할 사람들도 모집을 못해서 혼자 하기 때문에 더욱 힘들었는데 다행히 마감 5분..

영재원 산출물로 Surviv.io를 모티브로 한 게임을 만들었다. 아직 미완이지만 적당한 플레이는 할수 있게 해 놨고 이게임의 특징은 아두이노랑 연결해서 아두이노 조이스틱으로 사용이 가능하다는 것이다. 시작했을 때 start를 누르고 방향키로 원하는 것을 설정하여 스페이스를 누르면 된다. 가끔씩 에러가 뜨는 경우가 있는데 다시 시작하면 잘 작동하니 크게 신경 쓸 필요는 없다. 게임할 때 이미지 파일이 모두 있어야 되므로 깔 때 한 번에 다 까는 걸 추천한다. 댓글에 게임에 추가했으면 하는거, 개선할 점을 써주면 적극 반영할 것이니 많은 관심 부탁한다. 아두이노 회로이다. 있는 사진이 이거밖에 없어서 만드는걸 추천하지는 않는다. 코드 보고 만드는게 더 쉬울수도있다.

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으로 나눈 나..

영재원에서 프로세싱을 배울 때 핑퐁 벽돌깨기 게임을 만들었었는데 그때 스와이프 벽돌깨기 게임도 만들어 보고 싶어서 만들게 되었다. 기본 게임 배경은 이렇게 생겼다 기존 게임처럼 구현해놨고 위치만 조금 변경시켰다. 이렇게 초록색 아이템을 먹었을 경우 아래로 떨어진다. 마지막에는 파란색 공의 위치로 이동한다. 기능은 원래 게임과 같으니 설명은 안 하겠다 문제점이라고 하면 벽을 뚫는다는 점과 튕겼을 때 이상한 위치로 간다는 거, 이렇게 2가지이다. 이 버그들은 추후에 고칠 예정이다. import sys import random import pygame import time import math from tkinter import * from tkinter import messagebox from pygame...

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..

보이는 거 그대로 망했다 1214라면 사실상 본선 확정이지만 이번 연도부턴 1519라 이 정도 점수론 절대 갈 수 없다. 일단 풀이는 전부터 작성하고 있었으니 이어서 작성했다. 1. 계단 더보기 nypc의 첫 문제다 처음에 잡았을 때 뇌절이 좀 있어서 나중에 풀었는데 예제 설명에 쓰여있는 방법이 최적해다.(사실 그냥 준 문제) 현재 위치에서 내려간다음 끝까지 올라갔다 내려갔다 하면서 마지막에는 현재 위치로 다시 돌아와야 하니 1층에서 지금 층으로 오는 횟수를 빼주고 뺀값들로 왔다 갔다 해주면 되는데 이때 현재 위치가 1일 때는 올라가는 거부터 해도 되지만 아닐 경우 한번 내려가 줘야 되는데 이때 위로 올라가서 횟수를 줄일 수 있을 경우 올라가 줘서 줄인 다음 내려오면 더 짧은 횟수를 구할 수 있다. 시복..
- Total
- Today
- Yesterday
- 트리에서의 다이나믹 프로그래밍
- 자료구조
- 선분 교차 판정
- 수학
- 알고리즘
- 구현
- 최소 스패닝 트리
- Python
- discord bot
- 트리
- BOJ
- 개발
- 깊이 우선 탐색
- 그래프 이론
- 잡봇
- 다이나믹 프로그래밍
- 그리디 알고리즘
- A Dance of Fire and Ice
- 세그먼트 트리
- 그래프 탐색
- 느리게 갱신되는 세그먼트 트리
- codeforces
- 누적 합
- 이분 탐색
- 정렬
- C++
- KOI
- 자료 구조
- 이분매칭
- 완전 탐색
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |