C언어 기반의 언어들 1. C++ : C의 모든 특징을 담고있고, 클래스와 객체지향 프로그래밍의 특징을 지원한다. 2. Java : C++을 기반하였으며, 따라서 C언어의 많은 특징을 포함하고있다. 3. C# : C#은 C++ 와 Java로 부터 파생된 최근 언어이다. 4. Perl : Perl은 단순한 스크립트언어였다. 시간이 지남에 따라 C의 많은 기능을 확장하고 채택하였다. C언어의 장점 1. 효율성: 효율성은 처음부터 C언의 장점 중 하나였다. C는 정통적으로 어셈블리 언어가 사용되는 응용 프로그램을 위한 것 이기 때문에 C 프로그램이 제한된 양의 메모리에서 빠르게 실행될 수 있어야했다. 2. 이식성: 프로그램 이식성이 C의 주요목표는 아니었지만 언어의 강점 중 하나로 밝혀졌다. 프로그램이 PC에..

문제: https://www.acmicpc.net/problem/17610 17610번: 양팔저울 무게가 서로 다른 k개의 추와 빈 그릇이 있다. 모든 추의 무게는 정수이고, 그릇의 무게는 0으로 간주한다. 양팔저울을 한 번만 이용하여 원하는 무게의 물을 그릇에 담고자 한다. 주어진 모든 추 www.acmicpc.net 문제해석: 위 그림과 같이 왼쪽 저울에 물을 담기위한 빈그릇을 고정한다고 가정해보자. 자 우리는 한개의 추를 가지고 3가지 행동을 할수있다. 1. 추를 오른쪽에 올린다 :: 이 경우 빈그릇에 무게는 추의 무게만큼 증가한다. 2. 추를 왼쪽에 올린다 :: 이 경우 빈그릇에 무게는 추의 무게만큼 감소한다. 3. 추를 어느저울에도 올리지 않는다 :: 이 경우 빈그릇에 무게의 변화가 없다. 추의..

문제: https://www.acmicpc.net/problem/17609 17609번: 회문 각 문자열이 회문인지, 유사 회문인지, 둘 모두 해당되지 않는지를 판단하여 회문이면 0, 유사 회문이면 1, 둘 모두 아니면 2를 순서대로 한 줄에 하나씩 출력한다. www.acmicpc.net 문제해석: 회문(回文) 또는 팰린드롬(palindrome)은 앞에서 읽으나 거꾸로 읽으나 같은 문장을 뜻한다 ex) level, 다시합시다 이 문제의 특징은 회문은 아니지만 한 글자를 삭제하면 회문이되는 "유사회문" 이라는 상태가있다는 것이다. 따라서 입력으로 주어진 문자열은 총 3가지 상태로 표현할수있다. 0 : 회문 1 : 유사회문 2 : 회문X 유사회문X 각 상태를 나타내는 숫자의 특징은 회문을 만들기 위해 삭제해..

문제: https://www.acmicpc.net/problem/17608 17608번: 막대기 아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 www.acmicpc.net 문제 해석: 위 그림과 같이 n번선분부터 시작해 1번 선분까지 보면서 --> for(int i=n; i>=1; i--) 현재의 최대 높이(maxH) 보다 높은 선분(i번선분)을 발견했을때 최대높이를 갱신함과 동시에 답의 갯수증가를 해준다. 여기서 n번 선분이 시작 당시에 최대높이인것이 자명함으로 최대높이를 n번선분으로 초기화, 답의 갯수를 1로 초기화 후에 [n-1...1]번 선분을 보는 방법이..
#include using namespace std; const int treeSize = 1>=1){ if(l&1){ maxV = max(maxV,maxTree[l]); minV = min(minV,minTree[l++]); } if(!(r&1)){ maxV = max(maxV,maxTree[r]); minV = min(minV,minTree[r--]); } } return (maxV - minV) > t >> n; fill(minTree, minTree + treeSize*2, INT_MAX); for(int i=0; i> minTree[treeSize + i]; maxTree[treeSize + i] = minTree[treeSize + i]; } for(int i = treeSize-1; i>0;..
#include #include #include #include using namespace std; typedef long long LL; const int MAX_N = 100010; int sqrtN; struct Query { int idx, s, e; bool operator < (Query &x) { if (s / sqrtN != x.s / sqrtN) return s / sqrtN < x.s / sqrtN; return e < x.e; } }; vector query; int arr[MAX_N], cnt[MAX_N*10]; LL ret = 0, ans[MAX_N]; void add(int x) { ret += (LL)(2 * ++cnt[x] - 1)*x; } void sub(int x) { ..
전형적인 knapsack problem 문제이다. #include #include #include #include using namespace std; typedef pair pii; const int MAX_N = 100; const int MAX_T = 10010; int cache[MAX_N][MAX_T]; int n, t; pii test[MAX_N]; //{studyTime, score} int solve(int idx, int time) // idx단원 이후에 얻을수있는 최대점수 { if (idx == n) return 0; int& ret = cache[idx][time]; if (ret != -1) return ret; ret = solve(idx + 1, time); // idx단원 공부..
#include #include #include using namespace std; const int MAX_N = 100 + 5; const int MAX_W = 100100; int main() { int N, K; int W[100100]; int dp[MAX_N][MAX_W]; // dp[i][j] = [0...i]번 배낭을 사용하여 총합무게 j일때 얻을 수 있는 가치의 최댓값 int weight[MAX_N], value[MAX_N]; scanf("%d %d", &N, &K); for (int i = 1; i
- Total
- Today
- Yesterday
- opengl
- Python
- OpenVDB
- C++게임
- 숫자판 만들기
- 테트리스
- UE5.3
- 홍정모의 게임 만들기 연습 문제 패키지
- DP
- 백준 2365
- 언리얼 자동화
- ICPC 후기
- 언리얼 프로젝트 재생성 자동화
- ndisplay
- BOJ 27469
- C++게임개발
- 코드포스
- BOJ 2365
- 백준 27469
- Unreal Engine
- unreal enigne
- 정보올림피아드
- 언리얼 프로젝트 재생성
- pygame
- 퀸 움직이기
- 백준
- 브레젠험 알고리즘
- Codeforces
- 초등부
- tetris
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |