본문 바로가기

전체 글

(2344)
(C++) - 백준(BOJ) 1788번 : 피보나치 수의 확장 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 32 33 34 35 36 37 38 39 40 41 42 43 44 #include #define ll long long using namespace std; ll n; ll a[1000001]; void fibo() { a[0] = 0; a[1] = 1; for (int num = 2; num > n; if (n == -1)//f(-1)만 양수이므로 둘다 1을 출력한다. { cout
(C++) - 백준(BOJ) 2810번 : 컵홀더 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 32 33 34 35 36 37 38 39 40 #include #include using namespace std; //왼쪽끝에 커플석이 오른쪽 끝에 일반석 //왼쪽끝에 일반석이 오른쪽 끝에 커플석 int main() { string n; int ans = 1; int l_cnt = 0; int word; cin >> word >> n; for (int i = 0; i word) ans = word; cout
(C++) - 백준(BOJ) 1748번 : 수 이어 쓰기 1 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 #include using namespace std; int main() { int n; int ans = 0; cin >> n; for (int i = 1; i
(C++) - 백준(BOJ) 4153번 : 직각삼각형 a^2 + b^2 = c^2 면 직각삼각형입니다. c가 무조건 제일 길이가 길어야 하므로 먼저 오름차순으로 정렬한 뒤 비교해 답을 출력하면 끝 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include using namespace std; int a[3]; int main() { while (1) { cin >> a[0] >> a[1]>> a[2]; if (a[0] == 0 && a[1] == 0 && a[2] == 0) { break; } else { sort(a, a + 3); if (a[0] * a[0] + a[1] * a[1] == a[2] * a[2]) { cout
(C++) - 백준(BOJ) 1309번 : 동물원 S[n]을 사자를 배치하는 경우의 수라고 정의한다. S[n][0] : 사자 배치를 아무것도 안하는 것 S[n][1] : 사자 배치를 왼쪽에만 하는 것 S[n][2] : 사자 배치를 오른쪽에만 하는 것 s[i][0] = s[i-1][0] + s[i-1][1] + s[i-1][2], 아무것도 배치하지 않으므로 그 전 경우에서 모든 상황에 배치가 가능하다. s[i][1] = s[i-1][0] + s[i-1][2], s[i-1][1]은 배치할 수 없으므로 더하지 않는다. s[i][2] = s[i-1][0] + s[i-1][1], s[i-1][2]는 배치할 수 없으므로 더하지 않는다. 위 수식에서 미루어 보았을 때 사자의 배치를 가로 또는 세로 한칸 떨어진 상황에서는 하지 못하므로 각자의 상태에 따라 추가되는 경..
(C++) - 백준(BOJ) 1406번 : 에디터 https://www.acmicpc.net/problem/1406 1406번: 에디터 문제 한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다. 이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽), 또는 문장 중간 임의의 곳(모든 연속된 두 문자 사이)에 위치할 수 있다. 즉 길이가 L인 문자열이 현재 편집기에 입력되어 있으면, 커서가 위치할 수 있는 곳은 L+1가지 경우가 www.acmicpc.net 간단한 링크드 리스트 구현 문제였습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2..
Algospot - JOSEPHUS 문제 https://algospot.com/judge/problem/read/JOSEPHUS algospot.com :: JOSEPHUS 조세푸스 문제 문제 정보 문제 1세기에 살던 역사학자 조세푸스는 로마와의 전쟁에서 패해 N - 1명의 동료 병사들과 함께 출구가 없는 동굴에 포위당했다고 합니다. 동료 병사들은 로마에 항복하느니 차라리 자살하자고 결의했고, 포위당한 N명의 사람들이 모두 원형으로 둘러선 뒤 순서대로 자살하기로 했습니다. 한 사람이 자살하면, 다음에는 그 사람으로부터 시계 방향으로 K번째 살아 있는 사람이 자살하는 것입니다. 조세푸스의 책에 따르면 조세푸스와 다른 병사 하나 algospot.com 처음 입력 시 순서대로 넣어주기 때문에 sorting 할 필요가 없습니다. 그 다음 원소를 접근하..
자바 스크립트 코드 컴파일 법 본격적으로 자바 스크립트(JS) 찬양 시간을 가져볼까 한다. 우린 평소에 C++하나 컴파일 해보자고 Visual Studio를 받곤한다. 이 10기가짜리 어마무시한 친구는 우리의 디스크를 아주 손쉽게 잡아먹는다. 이 놀라운 친구는 Chrome의 개발자 콘솔에서도 컴파일이 가능하다. 크롬 브라우저를 열고 mac쓰는 친구는 alt+command+i, window쓰는 친구는 F12를 눌러보자 크롬이 한 화면이었던게 갑자기 이렇게 반쪼가리가 된다. 이것이 개발자 콘솔인데 여기서 자바스크립트 문법을 쳐서 컴파일링 할 수 있다. 콘솔창에 써져있는 저 코드를 한 번 따라쳐 보면 놀랍게도 실행결과가 같음을 알 수 있다. 이는 크롬안에 REPL(Read,Evaluate,Print,Loop)가 내장되어 있어서 내가 친 코..