Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- hackerrank
- Python
- BOJ
- c
- 생활코딩
- SWEA
- C언어
- Javascript
- 풀이
- HTML
- c++
- 숙명여자대학교 정보보안 동아리
- PHP 웹페이지 만들기
- siss
- BOJ Python
- 숙명여자대학교 정보보안동아리
- 파이썬
- XSS Game
- 자료구조 복습
- 백준
- lob
- Sookmyung Information Security Study
- hackctf
- WarGame
- The Loard of BOF
- 웹페이지 만들기
- 드림핵
- CSS
- 머신러닝
- 기계학습
Archives
- Today
- Total
혜랑's STORY
[BOJ_C] 10809번, 10773번 본문
#BOJ 10809 : 알파벳 찾기
- 풀이
search() 함수는 알파벳이 등장하는 위치를 알아내기 위한 함수이다. 만약 단어의 i번째에 알파벳이 위치한다면, i를 반환하고 그렇지 않으면 초기에 설정해둔 -1값을 반환한다.
알파벳의 처음부터 끝까지 -1 또는 등장하는 위치를 출력해야 하기 때문에 alpha라는 배열에 a-z까지 넣은 배열을 생성하였다. 단어 S를 입력받고 a-z까지 앞에서 만들어둔 search() 함수를 이용하여 위치값 또는 -1을 출력한다.
- 코드
#include <stdio.h>
#include <string.h>
int search(char *x, char y){
int n = -1;
for(int i=0; x[i]; i++){
if(x[i] == y){
n=i;
break;
}
}
return n;
}
int main(){
char S[101];
const char alpha[27] = "abcdefghijklmnopqrstuvwxyz";
scanf("%s", S);
for(int i=0; alpha[i]; i++){
printf("%d ",search(S, alpha[i]));
}
return 0;
}
- 실행결과
#BOJ 10773 : 제로
- 풀이
문제의 핵심인 입력받은 정수가 0이라면 직전 값을 지우고 0이 아닌 다른 수라면 해당 수를 쓴다. 따라서 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조인 스택을 사용하는 것이 가장 효율적이라고 생각하여 스택의 pop과 push를 이용하였다. 입력받은 정수가 0이라면 pop으로 값을 꺼내고, 아니면 push로 값은 저장해 둔다. 입력을 마치면 top이 초기값인 -1이 될 때까지 sum에 스택에 남아있는 값을 저장하고 출력한다.
- 코드
#include <stdio.h>
#define MAX_STACK_SIZE 100000
int stack[MAX_STACK_SIZE];
int top = -1;
int pop(){
return stack[top--];
}
void push(int value){
stack[++top] = value;
}
int main(){
int k, n;
scanf("%d", &k);
for(int i=0; i<k; i++){
scanf("%d", &n);
if(n==0){
pop();
continue;
}
push(n);
}
int sum=0;
while(top != -1){
sum += pop();
}
printf("%d",sum);
return 0;
}
- 실행결과
'2021 SISS 21기 활동 > 겨울방학 C' 카테고리의 다른 글
[BOJ_C] 1316번, 2869번 (0) | 2021.02.08 |
---|---|
[BOJ_C] 2748번, 2750번 (0) | 2021.02.01 |
[BOJ_C] 2941번, 2884번 (0) | 2021.01.23 |
[BOJ_C] 1037번, 1712번 (0) | 2021.01.18 |
[2021 겨울 C언어 2주차] (0) | 2021.01.14 |