초기 네이버 기록 54

백준 (C언어)백준 10757번 큰수 A+B문제 리버스 사용

#include #include void reverse(char* arr) { int len = strlen(arr); for (int i = 0; i < len / 2; i++) { char tmp = arr[i]; arr[i] = arr[len - i - 1]; arr[len - i - 1] = tmp; } } int main() { char arr1[100003] = { 0 }; char arr2[100003] = { 0 }; char result[100003] = { 0 }; scanf("%s %s", arr1, arr2); int i = 0; int arr1_size = strlen(arr1); int arr2_size = strlen(arr2); int size = arr1_size; int ..

백준 (C언어)백준 1002번 터렛 원의 내접 외접 조건문제

처음에 엄청 삽질을 했다. 공식으로 접근을 하려고 했고 그 사투의 흔적이 여기에 있다 처음에 원이 만나는 경우를 외접만 생각해서 왜 안되지 싶었는데,, 옛날에 수능 준비할 때 맨날 풀었던 외접 내접을 까먹어서 다시 복습을 해봤다. 두 원의 위치 관계는 두점에서 만나거나 아에 안 만나거나 한점에서 접하거나 아에 일치하는 경우 이렇게 나뉜다. 설명의 편의를 위해 두 원의 반지름을 r1 r2 로 적고 두 원의 중심사이 거리를 d라고 하겠다. 원이 두 점에서 만나는 경우: d가 r1 + r2 보다 큰 경우 원은 절대로 만나지 못한다. 0인 조건이 된다. 그리고 d와 작은반지름의 합이 큰반지름보다 작으면 원은 만날수 없기 때문에 이 두개의 조건을 정리하면 d >r1 +r2 && d >큰반지름 -작은반지름 이 된다..

백준 (C언어)그리디 알고리즘 단어수학 백준1339번

실패코드 #include #include int tenup(int a) { int k = 1; for (int i = 0; i < a; i++) k *= 10; return (k); } intwhere_is_alph(char a, char* arr, int len) { int i = 0; int result = 0; if (len == 0) return 0; while (1) { if (arr[i] == a) result += tenup(len - i - 1); if (i == 7) break; i++; } return (result); } void sort_arr(int* arr) { int tmp; for (int i = 0; i < 26; i++) { for (int j = 0; j < 25-i; ..

백준 (C언어)백준 1331번 구현 알고리즘 시뮬레이션(나이트)

#include int plus(int k) { if (k < 0) return(-k); return k; } int main() { char knight[3]; char next[3]; int check = 1; int first = 0; for (int i = 0; i < 18; i++) { scanf("%s", knight); if(first!=0) if (plus(knight[0] - next[0]) + plus(knight[1] - next[1]) != 3) check = -1; scanf("%s", next); if (plus(knight[0] - next[0]) + plus(knight[1] - next[1]) != 3) check = -1; first = 1; } if (check == 1..

백준 (C언어)백준 14503 로봇청소기(구현 시뮬레이션 맵탐색)

틀린코드에요! #include #include int main() { int length, width;//세로, 가로 int x, y, direction;//방향은 0:북, 1:동, 2:남, 3:서 int** map;// 세로 가로, 0육지 1바다 scanf("%d %d", &length, &width); map = (int**)malloc(sizeof(int*) * (length)); //int move[4][2] = {{0,-1}, {1,0}, {0,1}, {-1,0}};//북, 동, 남 ,서 int move[4][2] = { {0,-1}, {-1,0} ,{0,1} ,{1,0} };//북,서,남,동 scanf("%d %d %d ", &x, &y, &direction); for (int i = 0; i..

백준 (C언어)백준 10828번 스택 스택 구현문제

#include #include #include #define max_size 1000000 int stack[max_size]; int top=-1; void push(int x) { //if (top == max_size - 1) //printf("stackoverflow\n"); //else //{ top++; stack[top] = x; //} } void pop() { if (top == -1) printf("-1\n"); else { printf("%d\n", stack[top]); top--; } } int main() { int input; int len; int x; scanf("%d", &input); char order[10]; for (int i = 0; i < input; i++)..

728x90