티스토리 뷰

728x90

현 포스팅에서 설명하는 모든 문제는 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

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
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
글 보관함