728x90
반응형

C 17

[C : 백준] 10773. 제로

10773번 (silver 4) 제로 나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다. 재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다. 재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자! 입력 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다. 정수가 "0"일 경우에 ..

C 2022.05.29

[C : 백준] 1094. 막대기

No. 1094 1094번: 막대기 (acmicpc.net) 1094번: 막대기 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대 www.acmicpc.net [코드] #include int main(){ int n, cnt=0; scanf("%d", &n); while(n>0){ if(n%2 == 1) cnt++; n /= 2; } printf("%d", cnt); return 0; } [정리] 이 문제는 64 이하의 자연수를 2진수로 나타 내었을 때 1의 개수를 묻는 문제이다. 막대를 반으로만 자른다는점, 그리고 각각 다른 크기의 막대를 붙여서 다른 ..

C 2022.05.22

[C : 백준] 10866. 덱

No. 10866 (class 2) 10866번: 덱 (acmicpc.net) 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net [코드] #include #include int deque[10001]={0,}; char command[15]; int dequenum = 0; void callpush_front(int value); void callpush_back(int value); void callpop_front(); void callpop_back(); void callsize(); voi..

C 2022.05.22

[C : 백준] 1436. 영화감독 숌

No. 1436 (class 2) 1436번: 영화감독 숌 (acmicpc.net) 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net [코드] #include #include int main() { int res = 665; int num; scanf("%d", &num); int a = 0; while (1) { if (a == num) { printf("%d", res); break; } res++; for (int i = 0; i

C 2022.05.21

[C : 백준] 4963. 섬의 개수

No. 4963 4963번: 섬의 개수 (acmicpc.net) 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net [코드] #include int visit[50][50]={0}; int map[50][50]; int dx[8] = {-1,-1,0,1,1,1,0,-1}; int dy[8] = {0,1,1,1,0,-1,-1,-1}; int w,h; void DFS(int x, int y){ int i,nx,ny; visit[x][y]=1; for(i=0;i=h || nx=w || ny

C 2022.05.15

[C : 백준] 10828. 스택

No. 10828 (class 2) 10828번: 스택 (acmicpc.net) 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net [코드] #include #include #define stack_size 10001 int high = -1; int stack[stack_size]; void push(int x) { high++; stack[high] = x; } int empty() { if (high == -1) return 1; else return 0; } int pop() { if (e..

C 2022.05.15

[C : 백준] 10845. 큐

No. 10845 (class 2) 10845번: 큐 (acmicpc.net) 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net [코드] #include #include #include #include typedef struct Queue { int data; struct Queue *next; }Queue; Queue * front = NULL; Queue * back = NULL; void Push(int data) { Queue * temp = (Queue*)malloc(sizeof(Queu..

C 2022.05.15

[C : 백준] 1978. 소수 찾기

No. 1978 (class 2) 1978번: 소수 찾기 (acmicpc.net) 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net [코드] #include int main() { int N, num, cnt = 0; scanf("%d", &N); int i; while (N--) { scanf("%d", &num); //소수 검사 for (i = 2; i < num; i++) { if (num%i == 0) break; } if (i == num) cnt++; } printf("%d\n", cnt); return 0; } [정리] 소수 : 약수가 1과 자기자신만을 가진 수 1부..

C 2022.05.08
728x90
반응형