백준 1411: 빠진카드 문제풀이
2023. 4. 7. 14:04ㆍ카테고리 없음

▶문제
우리는 1부터 N까지의 숫자가 차례대로 적힌 N장의 카드 묶음을 가지고 있다.
그런 데 이 카드 묶음을 옮기는 중 실수로 땅에 떨어뜨려 그중 한 장을 잃어버렸다.
여러 분은 땅에 떨어진 카드 묶음을 읽어서 빠진 하나의 카드 번호를 찾아 출력해야 한다.
> 요약 하자면
첫 번째 줄에 몇 개에 카드를 가질 건지를 작성하고
두 번째 줄부터 카드의 번호를 입력받습니다. 입력받은 후 빠진 카드번호를 출력하는 프로그램입니다.
ex )
10개의 카드를 가지고 있다고 가정하고
1~9까지의 수를 입력, 10개의 카드인데 9까지 밖에 입력되지 않았기 때문에
10이 출력되는 것입니다.
저는 아래와 같은 코드를 사용하여
문제를 해결하였습니다.
코드 설명은 코드 옆 주석처리로 해두었습니다.
#include<stdio.h>
int main(void){
int a,b,sum=0,num=0;
scanf("%d",&a);
for(int i=1;i<=a;i++){ //1부터 입력한 숫자까지 다 더하고 num에 저장
num=num+i;
}
for(int j=1;j<a;j++){
scanf("%d",&b);
sum=sum+b; //입력 받은 숫자들을 sum에 저장
}
printf("%d",num-sum); //num에서 sum을 빼면 입력하지 않은 값이 나옴
}