목록알고리즘 (29)
어읽로꾸거
백준 16953 링크 https://www.acmicpc.net/problem/16953 해결과정 A에서부터 DFS로 탐색 범위에 맞지 않으면 버리기 코드 #include #include using namespace std; int main() { //freopen("input.txt", "r", stdin); long long a, b; cin >> a >> b; queue q; q.push({ a,1 }); while (!q.empty()) { long now = q.front().first; long count = q.front().second; q.pop(); if (now == b) { cout
백준 번호 : https://www.acmicpc.net/problem/1932 해결과정:2개의 배열로 나눠서 해결큰것 비교한 뒤 저장 ㄱㄱ 코드: #include int max(int a, int b) { return a > b ? a : b; } int A[500][500] = { 0 }; int B[500][500] = { 0 }; int main() { //freopen("input.txt", "r", stdin); //freopen("output.txt", "w", stdout); int t, i, j,temp=0; scanf("%d", &t); for (i = 0; i < t; i++) { for (j = 0; j
백준 번호 : https://www.acmicpc.net/problem/1620 해결과정:map과 배열을 이용string을 int로 바꾸는 함수 int atoi(char *str) 를 써봤다매개변수가 char* 이므로 string을 char* 로 바꿔주는 c_str()함수를 이용 cin cout만 썻다가 시간초과나서 해메다 scanf가 답인걸 알았음 🤔 코드: #include #include #include using namespace std; string book1[100003]; //번호로 이름 map book2; //이름으로 번호 int main() { //freopen("input.txt", "r", stdin); int n, m; cin >> n >> m; char str[21]; //scanf..
백준 2580 : https://www.acmicpc.net/problem/2580 백준 2239 : https://www.acmicpc.net/problem/2239 두 문제는 입력과 출력만 다를 뿐 같은 문제라고 봐도 된다. 지하철을 타면서 긴 시간을 통학하는게 지겨워 핸드폰에 스도쿠앱을 깔아서 하고있다. 정말 어려운것 같다. 답답하던 마음에 백준에 마침 스도쿠 문제가 있다는게 떠올라서 풀어보았다. 해결과정: 전체적인 풀이는 재귀를 이용한 완전탐색으로 풀었다는게 핵심이다. 사람이 푸는것과 마찬가지로 풀었다. 가로, 세로, 사각형에 같은 수가 있는지를 판단하는것이다. O(1)을 위해 메모이제이션을 이용하였다. row 를 예시로 들어서 row[n][number]는 n번째 세로줄에 number가 있는지 여..
백준 15954 : https://www.acmicpc.net/problem/15954 해결과정: 문제를 풀때 실수나 놓치는 부분이 많은 문제였음 1. K이상 2. 초기 지정해주는 min값을 매우 크게해주지 않으면 안됨 3. 범위(one by off 문제) 4. double말고 long double 이것만 해결하면 대부분은 맞을 것 같다. 1번 조건을 대충 읽어서 시간을 날리고... 2번도 놓쳐서 또날리고... 3번은 그동안 많이 겪은 문제라서 확실하게 확인함 for문을 돌리는것 말고도 분산 = 제곱의평균 - 평균의제곱으로 구할 수도 있다. 고등학교때 제평평제라고 외웠음 ∂ 코드:#include #include using namespace std; int main() { //freopen("input.t..