목록잡동사니/[2022] 회로이론 (81)
기록
https://www.acmicpc.net/problem/10807 10807번: 개수 세기 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거 www.acmicpc.net #include #include int main() { int n, v; int cnt = 0; int *num; int i; scanf("%d", &n); num = (int*) malloc(sizeof(int) * n ); for(i=0; i
https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX_STACK_SIZE 100001 typedef struct element { int key; }element; int top = -1; element stack[MAX_STACK_SIZE]; void push(element item) { stack[++top]= item..
https://www.acmicpc.net/problem/25501 25501번: 재귀의 귀재 각 테스트케이스마다, isPalindrome 함수의 반환값과 recursion 함수의 호출 횟수를 한 줄에 공백으로 구분하여 출력한다. www.acmicpc.net 코드가 문제에 모두 공개가 되어있다 뭐지 #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX_STRING_SIZE 1001 int cnt = 0; int recursion(const char* str, int left, int right) { if (left >= right) return 1; else if (str[left] != str[right]) return 0; else { cnt+..

https://www.acmicpc.net/problem/3273 3273번: 두 수의 합 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는 www.acmicpc.net 풀이 검색해서 풀었다. 오름차순으로 퀵 정렬부터 먼저 한 후 더블 포인터 이용 (배열 왼쪽 끝/오른쪽 끝) #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX_STRING_SIZE 100001 void swap(int arr[], int a, int b) { int temp = arr..

https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 슬라이딩 윈도우 알고리즘을 사용한다. #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX_STRING_SIZE 100001 int main() { int n, m; // n: 숫자 개수, m: 구간 개수 int a, b; // a, b: 구간 끝 int i; // 반복 int arr[MAX_STRING_SIZE]; ..
https://www.acmicpc.net/problem/10773 #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX_STACK_SIZE 100001 typedef struct element { int key; }element; int top = -1; element stack[MAX_STACK_SIZE]; int exist(element item) { // item이 stack에 존재하는지 확인하는 함수 for (int i = 0; i

https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 아래 블로그의 풀이 3 이용 아래 블로그 보고 공부하였습니다. https://myjamong.tistory.com/139 #define _CRT_SECURE_NO_WARNINGS #include int prime(int a) { for (int i = 2; i * i

https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net #define _CRT_SECURE_NO_WARNINGS #include #include #define MAX 51 char stack[MAX]; top = -1; void push(char a) { stack[++top] = a; } char pop(void) { return stack[top--]; } /* // 스택 출력 함수 void printStack(voi..