목록분류 전체보기 (427)
안 쓰던 블로그
메모리 구조 프로그램이 실행되면 OS가 메모리(RAM)에 공간을 할당한다 할당해주는 메모리 공간은 데이터, 코드, 스택, 힙의 4가지가 있다 1. 데이터 영역 전역변수와 static변수가 할당된다 프로그램 시작과 동시에 할당되며, 프로그램이 종료될 때 메모리가 소멸된다 2. 코드 영역 유저가 작성한 소스코드가 들어가는 영역, 실행할 프로그램의 코드가 저장된다 3. 스택 영역 프로그램이 자동으로 사용하는 임시 메모리 영역 함수 호출 시 생성되는 지역 변수와 매개변수가 저장되며, 함수 호출이 완료되면 메모리가 소멸된다 컴파일될 때 메모리 공간을 가짐 4. 힙 영역 프로그래머가 할당하고 해제하는 메모리 공간 이 공간을 동적 데이터 영역이라고도 하며, 여기에 메모리를 할당하는 것을 동적 할당이라고 한다 런타임 ..
1. 주소 지정 방식 주소: 주기억장치에서 데이터가 저장된 위치 주소 지정 방식: 주소를 지정하는 방식 1) 직접 주소지정 방식 가장 일반적인 개념의 간단한 주소 방식 주기억장치의 주소가 오퍼랜드 필드에 들어 있다면 직접 주소 지정 방식이다 (오퍼랜드: 연산코드가 아닌 나머지 부분) 오퍼랜드 필드의 내용이 유효 주소(EA)가 되는 방식 EA=A (EA=(A)가 실제로 이런 주소를 쓰진 않고 지정방식 설명 할 때 쓰는 표현방식인데 포인터 같은 것) 그냥 그 주소값 그대로 어떤 연산을 거치지 않고 바로 주기억장치에 가서 데이터 가져오면 된다 장점 한번만 엑세스: 위에 사진 보면 화살표가 한 번만 간다. 직접 접근하기 때문에 1번만 접근하면 된다 컴퓨터에서는 메모리가 데이터 처리 속도가 다 다르니까 속도를 맞..
교내대회에서 멘탈공격맞고 K.O 브론즈~실버나 돌아야겠다 17362 수학은 체육과목입니다2 1 2 3 4 5 6 7 8까지 하면 한 사이클을 도니까 8로 나눌 건데 수를 직접 써보면 알겠지만 14 15 16같이 오른쪽에서 왼쪽으로 넘어가는 수는 나머지가 1~5로 나오지 않음 그 경우만 예외로 해주면 된다 6이 나오면 4 출력, 7이면 3출력, 8이면 8로 나누고 있어서 나머지가 0이니까 나머지가 0일때는 2출력 10757 큰 수 A+B 파이썬으로 하면 그냥 출력하면 된다 갓-언어 C++로 보면 처음 딱 봤을 때는 string으로 a b를 받고 한 자리씩 int형으로 변환해서 더해주는데 만약 올림이 있다면 carry변수에 저장 해서 다음 자리의 sum을 구할 때 1을 더 더한다 라고 생각했음 근데 더 간단..
https://www.acmicpc.net/problem/7578 7578번: 공장 어떤 공장에는 2N개의 기계가 2열에 걸쳐 N개씩 배치되어 있다. 이 2개의 열을 각각 A열과 B 열이라고 부른다. A열에 있는 N개의 기계는 각각이 B열에 있는 N개의 기계와 하나씩 짝을 이루어 케이블� www.acmicpc.net 예제 그림을 보면 교차하는 부분은 3곳 교차하는 지점의 특징: 똑같은 132가 있어도 A에서의 위치와 B에서의 위치가 다르다 A[i]를 A에서 i의 위치, B[i]를 B에서 i의 위치라고 치면, A[i]B[j] 조건이 성립하면 접점 1개가 생긴다고 할 수 있다 그냥 반복문으로 단순 구현하면 A를 i로 돌면서 j로 조건에 맞는 수가 있는지 찾는 2중for문이 되고 O(n^2)의 시간복잡도로 5..
자주 쓰는 비트연산 정리 (feat. 펜윅트리) (1
오늘은 세그트리 달린다 https://www.acmicpc.net/blog/view/9 세그먼트 트리 (Segment Tree) 문제 배열 A가 있고, 여기서 다음과 같은 두 연산을 수행해야하는 문제를 생각해봅시다. 구간 l, r (l ≤ r)이 주어졌을 때, A[l] + A[l+1] + ... + A[r-1] + A[r]을 구해서 출력하기 i번째 수를 v로 바꾸기. A[i www.acmicpc.net 최대/최소값 찾기 12015 가장 긴 증가하는 부분 수열2 tree[i] = 수 A[i]를 마지막으로 하는 LIS의 길이로 두면, 1) i보다 앞에 있으면서(j
골딱이의 플레찍기 일기 실버 골드들 복습이랑 플레 문제들 위주로 재밌어보이는 거 풀 것 같음 16975 수열과 쿼리 21 더보기 https://www.acmicpc.net/blog/view/88 펜윅 트리 200% 활용하기 흔히 lazy propagation을 사용하여 푸는 것으로 알려진 이 두 문제는 사실 펜윅 트리만으로 풀 수 있습니다. 구간 덧셈, 포인트 쿼리 다음 연산을 효율적으로 수행하는 자료구조를 만들어 봅시다. 이것으로 16975번 - 수열과 쿼리 21을 풀 수 있습니다. $A_L$, $A_{L+1}$, $\cdots$, $A_R$에 각각 x씩 더한다. $A_k$를 출력한다. $B_1 = A_1$, $B_k = A_k - A_{k-1}$이라고 두면, 각각의 쿼리 www.acmicpc.net ..