티스토리 뷰
현 포스팅에서 설명하는 모든 문제는 codeup.kr 사이트에 있는 문제입니다. 여기 있는 문제 말고도 다양한 문제들이 준비되어 있으니 흥미 있으시다면 도전해보세요!
<codeup사이트란?> :알고리즘 관련 다양한 문제들을 풀면서 실력을 높일 수 있는 유용한 문제풀이 사이트
접속은 여기를 클릭해주세요. <codeup.kr>
「1169번 문제」
문제 핵심: 나이가 입력으로 주어진다.(정수, 나이는 113살 이하만 입력으로 들어온다.)
출생 연도 뒤의 두 자리와 연도 정보(1이면 1900년대, 3이면 2000년대)를 출력한다.
(단, 출생년도 뒤 2자리가 10보다 작을 경우10의자리에 0은 붙이지 않고 출력한다.)
예) 2009년생이라면 9 3 을 출력함. (09 3 이 아님)
※ 나이는 2012년도 기준입니다. (2012년도에 만든 문제임.)
1
2
3
4
5
6
7
8
9
10
11
|
#include <stdio.h>
int main(){
int a,b,c,d,e,f; //정수형 변수 선언
scanf("%d", &a); //정수 1개를 입력받아 a에 저장
if(a <= 13){ //a가 13이하이면
printf("%d 3", 13 - a); //13에서 a를 뺀 값과 그 뒤에 ' 3'을 출력함
}else printf("%d 1", 101 - a + 12); //a가 13보다 크다면 101-a+12를 계산한 값과 그 뒤에 ' 1'을 출력함
}
|
cs |
「1170번 문제」
문제 핵심: 학년, 반, 번호가 공백을 기준으로 입력으로 주어진다. (정수)
입력 범위:
학년 : 3 이하 , 반, 6 이하, 번호, 30 이하
학번을 붙여서 출력한다. 번호가 10번 미만일 때는 0을 붙여 출력한다.
1
2
3
4
5
6
7
8
9
10
|
#include <stdio.h>
int main(){
int a,b,c,d,e,f; //정수형 변수를 선언
scanf("%d %d %d", &a, &b, &c); //정수 3개를 입력받아 각각a,b,c에 저장
if(c < 10){ //c가 10보다 작으면
printf("%d%d0%d", a, b, c); //ab0c를 출력
}else printf("%d%d%d", a, b, c); //a가 10이상이면 abc를 출력
}
|
cs |
「1171번 문제」
문제 핵심: 학년, 반, 번호가 공백을 기준으로 입력된다.(정수)
입력 범위)
학년: 3 이하, 반: 20반 이하, 번호, 999번 이하
학번이 총 6자리가 되게 출력하시오. 빈 부분은 0으로 채운다.
1
2
3
4
5
6
7
8
9
10
|
#include <stdio.h>
int main(){
int a,b,c; //정수형 변수 선언
scanf("%d %d %d",&a,&b,&c); //정수 3개를 입력받아 각각a,b,c에 저장
printf("%d%02d%03d",a,b,c); //abc를 출력하는데, 이때 b는 최소2자리로 출력됨(b가 10보다 작으면 앞에0을 붙여 출력)
//c는 최소3자리로 출력됨(c가 100보다작으면 앞에00을,100보다 작고10보다 크면 앞에0을 붙여 출력)
}
|
cs |
「1172번 문제」
문제 핵심: 세 수를 오름차순으로 정렬하려고 한다. (낮은 숫자 -> 높은 숫자)
예)
5 8 2 ====> 2 5 8로 출력
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
#include <stdio.h>
int main(){
int a,b,c;
int min=9999999;
int min2=99999999;
int count = 0;
scanf("%d %d %d",&a,&b,&c);
if(a < b && a < c){
if(b < c)printf("%d %d %d",a,b,c);
else printf("%d %d %d",a,c,b);
count++;
}
if(b < a && b < c){
if(a < c)printf("%d %d %d",b,a,c);
else printf("%d %d %d",b,c,a);
count++;
}
if(c < b && c < a){
if(b < a)printf("%d %d %d",c,b,a);
else printf("%d %d %d",c,a,b);
count++;
}
if(a == b && c == a && b == c)printf("%d %d %d",a,a,a);
else if(a == b && a != c){
if(count == 0){
if(a < c)printf("%d %d %d",a,a,c);
else printf("%d %d %d",c,a,a);
}
}
else if(a == c && a != b){
if(count == 0){
if(a < b)printf("%d %d %d",a,a,b);
else printf("%d %d %d", b,a,a);
}
}
else if(b == c && b != a){
if(count == 0){
if(b < a)printf("%d %d %d",b,b,a);
else printf("%d %d %d",a,b,b);
}
}
}
|
cs |
※1067번 문제랑 비슷한 방법으로 문제를 해결하였습니다.
※위 코드는 a, b, c가 다를 때랑 같은 게 포함되어있을 때를 나누어 풀이했으므로 비효율적입니다. 이를 합쳐서 풀이한다면 훨씬 효율적인 풀이가 가능할 것입니다.
「1173번 문제」
문제 핵심: 시와 분이 입력된다. 입력된 시간의 30분 전의 시간을 출력하시오.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
#include <stdio.h>
int main(){
int a,b,c,d,e,f; //정수형 변수 선언
scanf("%d %d", &a, &b); //a,b를 입력받아 각각a,b에 저장
if(b < 30){ //b가 30보다 작고
if(a == 0)a = 24; //a가 0 이면 a에 24라는 값을 저장함
a = a - 1; //b가 30보다 작으면 a에서 1을 뺀 값을 a에 저장
b = b + 30; //b가 30보다 작으면 b에서 30을 더한 값을 b에 저장
printf("%d %d",a, b); //계산이 완료된 값을 a,b에 저장
}else{ //b가 30이상이면
printf("%d %d",a, b-30); //a와 b에서 30을 뺀값을 출력
}
}
|
cs |
'문제풀이 > codeup' 카테고리의 다른 글
[c언어]codeup사이트 1205 ~ 1212 문제풀이 (0) | 2020.02.14 |
---|---|
[c언어]codeup사이트 1180 ~ 1204 문제풀이 (0) | 2020.02.14 |
[c언어]codeup사이트 1164 ~ 1168 문제풀이 (1) | 2020.02.07 |
[c언어]codeup사이트 1159 ~ 1163 문제풀이 (0) | 2020.02.07 |
[c언어]codeup사이트 1154 ~ 1158 문제풀이 (0) | 2020.02.06 |
- Total
- Today
- Yesterday
- 2022.02.05
- Anaconda
- django
- 티처블 머신
- Codeup
- 도전
- JavaScript
- 바닐라 js
- 1254
- 바닐라 javascript
- 1255
- 1253
- localstorage
- 주석
- promise반환
- SMTP
- 코드업
- 코드설명
- 타이탄의도구들
- 꿈두레
- 1252
- 1251
- pygame
- 문제풀이
- 컨트롤타임
- 아나콘다
- Python
- notion api
- 사칙연산
- 크롤링
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |