문제설명 소스코드 #include using namespace std; int main() { unsigned int N; cin >> N; cout
문제설명 소스코드 #include using namespace std; int main() { int x[3]; int y[3]; for (int i = 0; i > x[i] >> y[i]; if (x[0] == x[1]) cout
문제설명 소스코드 #include using namespace std; int main() { int N; cin >> N; if (N != 1) for (int i = 2; i
문제설명 소스코드 #include using namespace std; int main() { int N, M; int sum = 0; int min = 10000; bool flag = false; bool flag2 = false; cin >> N >> M; for (int i = N; i
문제설명 소스코드 #include using namespace std; int main() { int N, input; int count = 0; bool flag = false; cin >> N; for (int i = 0; i > input; for (int j = 2; j < input; ++j) //1과 자기 자신만으로 나누어 떨어지는 1보다 큰 양의 정수. { //즉, 1과 자기 자신 외에 수로 나누어 떨어지면 소수가 아님 if (flag == true) break; // 소수가 아니라고 이미 판정되었으면 반복할 필요가 없음 if (input % j == 0) flag = true; //1과 자기 자신 외에 수로 나누어 떨어지면 flag = true } if (in..
문제설명 소스코드 #include using namespace std; int main() { int N; int count = 0; int sum = 0; while (true) { cin >> N; if (N == -1) break; int* arr = new int[N]; //동적 할당 for (int i = 1; i < N; ++i) { if (N % i == 0) //i로 나눈 나머지가 0이라면 { arr[count++] = i; //배열에 i를 저장 sum += i; //sum에 i를 더함 } } if (sum == N) //완전수라면 { cout
문제설명 소스코드 #include using namespace std; int main() { int N, K; int count = 0; cin >> N >> K; int* arr = new int[N]; for (int i = 1; i
이 글은 혼자 공부하는 컴퓨터 구조 + 운영체제 (저자 : 강민철)의 책과 유튜브 영상을 참고하여 개인적으로 정리하는 글임을 알립니다. 주소에는 두 가지 종류가 있다. 물리 주소 : 메모리 하드웨어가 사용하는 주소 논리 주소 : CPU와 실행 중인 프로그램이 사용하는 주소 물리 주소(physical address)와 논리 주소(logical address) CPU와 실행 중인 프로그램은 현재 메모리 몇 번지에 무엇이 저장되어 있는지 다 알 수 없다(메모리에 저장된 정보는 시시각각 변하기 때문) 물리 주소 : 메모리 입장에서 바라본 주소, 정보가 실제로 저장된 하드웨어 상의 주소를 의미 논리 주소 : CPU와 실행 중인 프로그램 입장에서 바라본 주소, 실행 중인 프로그램에게 부여된 0번지부터 시작되는 주소..