A0 설명

#include <stdio.h>

int main()
{
	printf("UAGCCGAU");
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC D0  (0) 2023.02.18
2022 SFPC C0  (0) 2023.02.17
2022 SFPC B0  (0) 2023.02.17
2022 SFPC B1  (0) 2023.02.16
2022 SFPC A1  (0) 2023.02.03
2022 SFPC pE1 ver.2  (0) 2023.02.02
#include <iostream>

// 입력 : 시간 h, 분 m, 기준값 d
// 출력 : 현재 시간대의 각도가 주어진 사잇각(d)와 같다면 1, 아니면 0
int f (int h, int m, int d) // h = 3, m = 0
{
    // t = h시와 m분을 분으로 환산 // t = 180
    int t = h * 60 + m;

    // t가 홀수면 시침의 회전수에 소수점이 붙기 떄문에 오답이 나오게 된다.
    if (t % 2 == 1)
        return 0;

    // x = 시침이 몇도 도는지 저장(t / 2는 0.5를 분수로 바꾼 것)
    // y = 분침이 몇도 도는지 저장
    // z = x - y의 절댓값 저장
    int x = (t / 2) % 360;
    int y = (t * 6) % 360; 
    int z = abs(x - y);

    // z가 180보다 큰것은 주어진 사잇각의 크기를 초과하므로
    // 360에 z를 뺸 값을 z에 저장
    if (z > 180)
        z = 360 - z;

    if (z == d)
        // 현재 시간의 사잇각이 주어진 사잇각과 
        // 같은 것이므로 1 반환
        return 1;
    else
        // 현재 시간의 사잇각이 주어진 사잇각과 
        // 같지 않은것이므로 0 반환
        return 0;
}

int main()
{
    // d = 사잇각
    /// h, m = 시간과 분
    // cnt = 개수
    int d, h, m, cnt = 0;

    scanf("%d", &d);
    
    // 시간은 0시부터 11시까지 있으니
    // h를 0부터 11까지 돌린다.
    for (h = 0; h < 12; h++)
    {
        // 분은 0분부터 59분까지 있으니
        // m을 0부터 59까지 돌린다.
        for (m = 0; m < 60; m++)
        {
            // f함수에서 참이 나왔다는건 d와 같은 각이라는 뜻이므로
            // cnt를 1 올려준다.
            if (f(h, m, d) == 1) cnt++;
        }
    }
    
    // d와 사잇각이 같은 시각의 개수 출력
    printf("%d\n", cnt);
    
    // 시간은 0시부터 11시까지 있으니
    // h를 0부터 11까지 돌린다.
    for (h = 0; h < 12; h++)
    {
        // 분은 0분부터 59분까지 있으니
       // m을 0부터 59까지 돌린다.
        for (m = 0; m < 60; m++)
        {
            // f함수에서 참이 나왔다는건 d와 같은 각이라는 뜻이므로
            // 시각을 출력해준다.(%02d = 숫자 2개 고정적으로 출력, 한 자리 수는 앞에 0 추가 출력
            // 예:출력값이 8이면 08이 출력된다.)
            if (f(h, m, d) == 1) printf("%02d:%02d\n", h, m);
        }
    }
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC C0  (0) 2023.02.17
2022 SFPC B0  (0) 2023.02.17
2022 SFPC A0  (0) 2023.02.17
2022 SFPC A1  (0) 2023.02.03
2022 SFPC pE1 ver.2  (0) 2023.02.02
2022 SFPC pE1 ver.1  (0) 2023.02.02
#include <stdio.h>

int main()
{
	int n; // n = 염기의 개수
	char ans[100000]; // DNA의 염기서열

	scanf("%d", &n);
	scanf("%s", ans);

	for (int i = 0; i < n; i++) // i를 0부터 n - 1까지 돌려 배열에 있는 모든 값을 비교해본다.
	{
		if (ans[i] == 'A') printf("U"); // 만약 ans[i]가 A(아데닌)이라면 U(우라실)을 출력한다.
		else if (ans[i] == 'T') printf("A"); // 만약 ans[i]가 T(티민)이라면 A(아데닌)을 출력한다.
		else if (ans[i] == 'C') printf("G"); // 만약 ans[i]가 C(사이토신)이라면 G(구아닌)을 출력한다.
		else printf("C"); // 위에 있는 모든 사항이 맞지 않다면 G(구아닌)이라는 뜻이므로 C(사니토신)을 출력한다.
	}
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC B0  (0) 2023.02.17
2022 SFPC A0  (0) 2023.02.17
2022 SFPC B1  (0) 2023.02.16
2022 SFPC pE1 ver.2  (0) 2023.02.02
2022 SFPC pE1 ver.1  (0) 2023.02.02
2022 SFPC pD1 ver.2  (0) 2023.02.01
// ver.2 for문
#include <stdio.h>

int x[4] = { 500, 100, 50, 10 }; // 특산물 가격

int main()
{
    int n, m; // n = 처음 가지고 있는 코인, m = 사용된 코인
    int ans = 0; // 500코인부터 10코인까지 순서대로 특산물 개수를 저장할 배열
    scanf("%d", &n);
    scanf("%d", &m);

    int t = n - m; // t = 보유 코인 수
    for (int i = 0; i < 4; i++) // i를 0부터 3까지 돌려 500, 100, 50, 10 다 돌려본다.
    {
        int a = t / x[i]; // a에다가 (보유 코인 수) / (현재 특산물 교환 가격)을 하여 교환 가능한 특산물 개수를 저장한다.
        ans += a; // ans에 교환 가능 특산물을 누적하여 최종 결과를 얻게 한다.
        t -=  a* x[i]; // t는 보유 코인 수이니 보유 코인 수에 특산물 교환 가격을 빼어 사용한 코인을 뺴준다.
    }
    printf("%d", ans); // 특산물 개수를 출력한다.
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC A0  (0) 2023.02.17
2022 SFPC B1  (0) 2023.02.16
2022 SFPC A1  (0) 2023.02.03
2022 SFPC pE1 ver.1  (0) 2023.02.02
2022 SFPC pD1 ver.2  (0) 2023.02.01
2022 SFPC pD1 ver. 1  (0) 2023.02.01
// ver.1 for문 X
#include <stdio.h>

int main()
{
    int n, m; // n = 처음 가지고 있는 코인, m = 사용된 코인
    int ans[5] = { 0 }; // 500코인부터 10코인까지 순서대로 특산물 개수를 저장할 배열
    scanf("%d", &n);
    scanf("%d", &m);

    int t = n - m; // t = 보유 코인 수

    // ans[1]은 영덕 대게(500코인)를 교환할 수 있는 개수를 저장하는 곳이니
    // t / 500은 전체 코인수에 500을 나눠서 나온 몫이 개수이므로
    // ans[1]에 t / 500을 저장한다.
    ans[1] = t / 500; 
    
    // 영덕 대게를 샀으니 산만큼 보유 코인을 깎아준다.
    t -= 500 * ans[1];

    // ans[2]은 김천 포도(100코인)를 교환할 수 있는 개수를 저장하는 곳이니
    // t / 100은 전체 코인수에 100을 나눠서 나온 몫이 개수이므로
    // ans[2]에 t / 100을 저장한다.
    ans[2] = t / 100;
    
    // 김천 포도를 샀으니 산만큼 보유 코인을 깎아준다.
    t -= 100 * ans[2];

    // ans[3]은 의성 마늘(50코인)를 교환할 수 있는 개수를 저장하는 곳이니
    // t / 50은 전체 코인수에 50을 나눠서 나온 몫이 개수이므로
    // ans[3]에 t / 50을 저장한다.
    ans[3] = t / 50;

    // 의성 마늘을 샀으니 산만큼 보유 코인을 깎아준다.
    t -= 50 * ans[3];

    // ans[4]은 상주 곶감(10코인)를 교환할 수 있는 개수를 저장하는 곳이니
    // t / 10은 전체 코인수에 10을 나눠서 나온 몫이 개수이므로
    // ans[4]에 t / 10을 저장한다.
    ans[4] = t / 10;

    // 상주 곶감을 샀으니 산만큼 보유 코인을 깎아준다.
    t -= 10 * ans[4];

    // 변수 number에 순서대로 구한 값을 저장해준 후 출력한다.
    int number = 0;
    for (int i = 1; i <= 4; i++) number += ans[i];
    printf("%d", number);
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC B1  (0) 2023.02.16
2022 SFPC A1  (0) 2023.02.03
2022 SFPC pE1 ver.2  (0) 2023.02.02
2022 SFPC pD1 ver.2  (0) 2023.02.01
2022 SFPC pD1 ver. 1  (0) 2023.02.01
2022 SFPC pC1,2  (1) 2023.01.31
// ver.2 속도가 빠름(2중 for문)
#include <stdio.h>

int main()
{
    int n, m;
    int d1, d2, d3;

    scanf("%d %d", &n, &m);
    scanf("%d %d %d", &d1, &d2, &d3);
    int t = n - m; // n - m이 (독도새우 수) - (보호해야 하는 수)이므로 n - m을 해준다.
    int ans = -1;

    // i는 d1을 사용한 횟수다.
    for (int i = 0; i <= t; i++) 
    {
        // j는 d2를 사용한 횟수다.
        for (int j = 0; j <= t; j++) 
        {
            int a = i * d1 + j * d2;
            // 만약 a가 k보다 크다면 빠져나가기 
            if (a > t) break;
            // b에는 현재 d3를 이용해 잡아야 하는 물고기수 저장
            int b = t - a;
            // c에는 b에 d3를 나눈 나머지를 저장한다.
            int c = b % d3;
            // 만약 c가 0이라면 계산할 수 있으므로 계산을 한다.
            if (c == 0)
            {
                int k = b / d3; // k에 잡아야 하는 물고기를 d3를 이용해 잡은 횟수 저장
                // 만약 ans가 처음 그대로인 -1이면 잡을 수 없다는 것이고
                //  i + j + k보다 크다면 최솟값이 생겼다는것이므로 변경
                if (ans == -1 || (ans > i + j + k))
                    ans = i + j + k;
            }
        }
    }
    printf("%d", ans);
}

'SFPC > 2022' 카테고리의 다른 글

2022 SFPC B1  (0) 2023.02.16
2022 SFPC A1  (0) 2023.02.03
2022 SFPC pE1 ver.2  (0) 2023.02.02
2022 SFPC pE1 ver.1  (0) 2023.02.02
2022 SFPC pD1 ver. 1  (0) 2023.02.01
2022 SFPC pC1,2  (1) 2023.01.31

+ Recent posts