λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ’œ μ½”λ”©ν…ŒμŠ€νŠΈ/πŸ’œ λ°±μ€€

[λ°±μ€€] C 10일차 (과제 μ•ˆλ‚΄μ‹ λΆ„..? #5597번)

by eyes from es 2022. 12. 12.
728x90
λ°˜μ‘ν˜•

https://www.acmicpc.net/problem/5597

 

5597번: 과제 μ•ˆ λ‚΄μ‹  λΆ„..?

XλŒ€ν•™ Mκ΅μˆ˜λ‹˜μ€ ν”„λ‘œκ·Έλž˜λ° μˆ˜μ—…μ„ λ§‘κ³  μžˆλ‹€. ꡐ싀엔 학생이 30λͺ…이 μžˆλŠ”λ°, 학생 λͺ…λΆ€μ—” 각 ν•™μƒλ³„λ‘œ 1λ²ˆλΆ€ν„° 30λ²ˆκΉŒμ§€ μΆœμ„λ²ˆν˜Έκ°€ λΆ™μ–΄ μžˆλ‹€. κ΅μˆ˜λ‹˜μ΄ λ‚΄μ€€ νŠΉλ³„κ³Όμ œλ₯Ό 28λͺ…이 μ œμΆœν–ˆλŠ”λ°,

www.acmicpc.net


문제

XλŒ€ν•™ Mκ΅μˆ˜λ‹˜μ€ ν”„λ‘œκ·Έλž˜λ° μˆ˜μ—…μ„ λ§‘κ³  μžˆλ‹€. ꡐ싀엔 학생이 30λͺ…이 μžˆλŠ”λ°, 학생 λͺ…λΆ€μ—” 각 ν•™μƒλ³„λ‘œ 1λ²ˆλΆ€ν„° 30λ²ˆκΉŒμ§€ μΆœμ„λ²ˆν˜Έκ°€ λΆ™μ–΄ μžˆλ‹€.

κ΅μˆ˜λ‹˜μ΄ λ‚΄μ€€ νŠΉλ³„κ³Όμ œλ₯Ό 28λͺ…이 μ œμΆœν–ˆλŠ”λ°, κ·Έ μ€‘μ—μ„œ μ œμΆœ μ•ˆ ν•œ 학생 2λͺ…μ˜ μΆœμ„λ²ˆν˜Έλ₯Ό κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

 

μž…λ ₯

μž…λ ₯은 총 28μ€„λ‘œ 각 제좜자(학생)의 μΆœμ„λ²ˆν˜Έ n(1 ≤ n ≤ 30)κ°€ ν•œ 쀄에 ν•˜λ‚˜μ”© μ£Όμ–΄μ§„λ‹€. μΆœμ„λ²ˆν˜Έμ— 쀑볡은 μ—†λ‹€.

 

좜λ ₯

좜λ ₯은 2쀄이닀. 1번째 쀄엔 μ œμΆœν•˜μ§€ μ•Šμ€ ν•™μƒμ˜ μΆœμ„λ²ˆν˜Έ 쀑 κ°€μž₯ μž‘μ€ 것을 좜λ ₯ν•˜κ³ , 2번째 쀄에선 κ·Έ λ‹€μŒ μΆœμ„λ²ˆν˜Έλ₯Ό 좜λ ₯ν•œλ‹€.

 

λ¬Έμ œν’€μ΄

  1. 30λͺ… μΆœμ„λ²ˆν˜Έ 배열에 0을 λ„£κ³  μ΄ˆκΈ°ν™”
  2. μ œμΆœν•œ 28λͺ…μ˜ μΆœμ„λ²ˆν˜Έλ₯Ό scanf둜 λ°›λŠ”λ‹€
  3. μ œμΆœν•œ μΆœμ„λ²ˆν˜ΈλŠ” 1둜 λ‹€μ‹œ λ„£λŠ”λ‹€.
  4. μž‘μ€ μΆœμ„λ²ˆν˜Έλ₯Ό n1, κ·Έ λ‹€μŒ 큰 μΆœμ„λ²ˆν˜Έλ₯Ό n2
  5. 30λͺ…μ˜ for문을 λŒλ©΄μ„œ 0인 μΆœμ„λ²ˆν˜Έκ°€ 있으면
    1. n1이 아직 λΉ„μ–΄μžˆμœΌλ©΄(-1) n1에 λ„£κ³ ,
    2. n1이 λΉ„μ–΄μžˆμ§€ μ•ŠμœΌλ©΄ (!=-1) n2에 λ„£λŠ”λ‹€

 

C code

#include <stdio.h>

int main()
{
    int a;
    int n1=-1;
    int n2=-1;
    int arr[30]= {0};
    
    for(int i=0;i<28;i++){
        scanf("%d",&a);
        arr[a-1]=1;
    }
    
    for(int i=0;i<30;i++){
        if(arr[i]==0){
            if(n1==-1){
                n1=i+1;
            }else{
                n2=i+1;
            }
        }
    }
    
    printf("%d\n",n1);
    printf("%d\n",n2);
    
    return 0;
}

 

κ²°κ³Ό

728x90
λ°˜μ‘ν˜•