목록분류 전체보기 (408)
오답노트
https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net - 문제 파악 입력된 숫자들 중 소수의 개수를 출력한다. - 정답 #include "bits/stdc++.h" using namespace std; int main() { int t; cin >> t; int ans = 0; while (t--) { int n; cin >> n; if (n == 1) continue; bool flag = false; for (int i = 2; i
https://www.acmicpc.net/problem/2960 2960번: 에라토스테네스의 체 2, 4, 6, 8, 10, 3, 9, 5, 7 순서대로 지워진다. 7번째 지워진 수는 9이다. www.acmicpc.net - 문제 파악 2부터 입력에서 주어진 수만큼 배수를 지운다. 지운 배수들은 배열에 넣어놓고 반복문에서 이미 지운 배수를 조회할 땐 지나친다. - 정답 코드 #include "bits/stdc++.h" using namespace std; int arr[1005]; int main() { int n, k; cin >> n >> k; int ans = 0; for (int i = 2; i n) break; if (arr[a]) continue; arr[a]++; ans++; if (ans..
https://www.acmicpc.net/problem/17425 17425번: 약수의 합 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더 www.acmicpc.net - 문제 파악 약수의 합2 와 같은 문제라고 생각하고 풀이 시작, 하지만 Test Case 만큼 더 약수 계산을 수행해야한다. - 나의 시도 1. 일단 무식하게 약수의 합2를 Test Case 수행 -> 시간초과 2. 배열에 미리 만들어 놓고 그것을 주어진 수에 대해서 빼야겠다고 생각 -> 하지만 배열에 어떤식으로 넣을지, 또 어떤식으로 출력..
https://www.acmicpc.net/problem/17427 17427번: 약수의 합 2 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 A의 모든 약수를 더 www.acmicpc.net - 문제 파악 자연수 N이 주어지면 1부터 N까지 각 자연수 마다 약수의 합을 모두 더하는 문제 - 나의 시도 무식하게 1부터 약수 구하여 더하고 를 N까지 반복, 하지만 자료형은 신경써서 unsigned long long 으로 답을 도출 하였으나.. 결과는 시간 초과 log(N) 이 되도록 로직을 구성하려고 시도했다. 자연수 k의 배수는..
내가 지금까지 DP 문제를 풀면서 어느정도 패턴이 있다고 생각하여, 그 패턴을 정리 해보려고 한다. 하지만 무조건 여기에 정리한 패턴이 나오는건 아니다. 그래도 한 번 정리하고 넘어가면 다음에 비슷한 문제는 해결할 수 있을것 같다. - 현재까지 계산된 값을 넣어놓는 패턴 1. n개의 배열 (arr[n])이 주어지면 arr[0]부터 arr[i]까지의 무언가 연산한 결과를 D[i]에 넣는다. 2. 이때 기준이 있어야 하므로 2중 for문을 사용한다. 3. D[i]는 D[j]와 arr[i]를 연산하는 것 생각해본다. 4. 내가 가장 많이 하는 실수는 요소의 기준을 항상 요소의 처음부터라고 생각한다. 요소의 끝을 먼저 정하고 풀이를 생각해보자. - 선택지를 주고 이 중에서 하나를 선택하는 패턴 1. D[i]는 ..
1. 나머지 원리 이를 이용해 자리수가 점점 커지는 숫자들을 줄여나가면서 계산할 수 있다. https://www.acmicpc.net/problem/4375 (A+B)%C = ((A%C) + (B%C))%C (A×B)%C = ((A%C) × (B%C))%C 2. 나머지 원리2 https://www.acmicpc.net/problem/1769 X의 각 자리의 수를 단순히 더한 수 Y를 만든다. 예를 들어 X가 1107이었다면, Y는 1+1+0+7=9가 된다. Y=9는 3의 배수이므로 X=1107 역시 3의 배수가 되는 것이다. 즉, X의 각 자리의 수를 단순히 더한 수 Y는 X와 같은 배수 갖는다.
1. Dlg 포인터를 가져다가 UI 를 사용하던것 서로 모순되는 상황이라 데드락이 걸린 상태 쓰레드는 UI를 사용할려고 하고 Dlg에서는 종료하라고 flag를 내린 상태 하지만 Dlg가 사라지면서 UI를 사용하지 못하니 Thread가 제대로 해제 되지 못했다. 2. PumpMessage 로 PostThreadMessage 가 호출될 때까지 계속 기다린다. CWinThread에 flag를 내린 후 아래 코드로 PostThreadMessage 가 호출 될 때까지 계속 기다린다 (개념이 맞는지 잘 모르겠다.. 호출 될때까지 기다리는건지 아니면 호출을 계속 시키는건지.. 느낌상 더 이상 호출될 메세지가 없을때까지 보는거 같다..) MSG msg; while (::PeekMessage(&msg, NULL, 0, ..
1. 좌표계를 그대로 할 것. -> 아무 생각없이 x축 y축을 바꿔서 받았더니 결과가 다르게 나옴 -> 대충 맞는 부분도 있지만 다른것이 존재함 2. queue 에 push 하는 타이밍 -> 좌표계에서 인접한 객체를 찾을 때 => 좌표계를 전부 돌면서 객체를 발견할 때 마다 push -> 좌표계에서 지정된 지점부터 점점 퍼져 나갈 때 => 좌표계를 입력 받을때 미리 push 3. 다른 큐와 비교할 때 주의점 -> 다른 큐가 방문했던 곳을 비교해서 방문할때 아예 방문하지 않았을 때도 생각해야한다. ex) 다른 큐가 방문했던 곳을 비교할때 자신보다 작을때를 비교한다 (현재 큐 돌고있는 큐보다 먼저 왔었는지) 그때 아예 방문하지 않았을 때도 고려해야한다. 보통 -1로 배열을 초기화 하기때문에 방문하지 않으면 ..
간단하게 DB 접속 에디트 컨트롤에 쿼리를 적어서 실행할 수 있도록 만들었다. Connection String 은 MSSQL 용
https://blog.naver.com/tipsware/221337692149 [실습] MFC에서 ODBC를 사용하여 DBMS에 데이터 Query 하기 - Step1 1. 실습을 진행하기 전에 봐야 할 내용들! [ MFC를 기반으로 실습 진행 ] 이 실습은 Visual Studio 20... blog.naver.com https://blogattach.naver.net/2db8318295cdc91539dcbd89b7572655fea25fb974/20180813_229_blogfile/tipsware_1534096287017_5apjLZ_zip/ExamODBC.zip