[C언어 코드업 문제풀이] CodeUp 1430 : 기억력 테스트 2
ET의 공부/C언어 연습문제[ 코드업 ]2020. 4. 7. 09:30
코드업 1430번 기억력 테스트2 문제 풀이 해답입니다.
1. 문제 설명
주현이 엄마는 주현이를 영재로 키우기 위해 매일 혹독한 기억력 테스트를 하고 있다.
N개의 숫자를 먼저 말해주고, M개의 질문을 하면서 그 숫자가 있었는지 없었는지 테스트한다.
만약 있었다면 1을 출력하고, 없었다면 0을 출력한다.
이번에는 주현이가 좋아하는 3단 합체 변신로봇 '또봇 트라이탄'이 선물로 걸려있다.
주현이를 도와 줄수 있는 프로그램을 만드시오.
2. 입력
첫째줄에 N이 입력된다. (1 <= N <= 10,000,000)
둘째 줄에 N개의 숫자가 공백으로 구분되어 차례대로 입력된다. ( 데이터값의 범위 : 1 ~ 10,000,000)
셋째줄에 질문의 수 M이 입력된다. ( 1 <= M <= 100,000)
넷째 줄에 M개의 질문이 입력된다.
3. 출력
M개의 각각의 질문에 대해 그 숫자가 있었으면 1을 출력, 없었으면 0을 하나씩 차례대로 출력한다.
4. 입력 예시
5
2 52 23 55 100
4
5 2 55 99
5. 출력 예시
0 1 1 0
6. 문제 풀이
#include<stdio.h>
int main(){
int N,M;
int arr[10000001] = {};
int num;
scanf("%d", &N);
for (int i = 0; i < N; i++)
{
scanf("%d", &num);
arr[num] = 1;
}
scanf("%d", &M);
for (int i = 0; i < M; i++)
{
scanf("%d", &num);
printf("%d ", arr[num]);
}
return 0;
}
|
2 52 23 55 100 를 입력받는다 하면 arr[0] =2, arr[1] =52, arr[2] = 23 순이 아닌
arr[2] =52, arr[52] =1, arr[23] = 1 식으로 입력받은 값을 배열의 index로 사용합니다.
그 후 M개의 질문을 받을 때 arr[M의 질문] 을 출력한다면 있는 값이면 1, 없는 값이면 0을 출력하게 됩니다.
'ET의 공부 > C언어 연습문제[ 코드업 ]' 카테고리의 다른 글
[C언어 코드업 문제풀이] CodeUp 1406 : love (0) | 2020.04.13 |
---|---|
[C언어 코드업 문제풀이] CodeUp 1440 : 비교 (0) | 2020.04.13 |
[C언어 코드업 문제풀이] CodeUp 1425 : 자리 배치 (0) | 2020.04.07 |
[C언어 코드업 문제풀이] CodeUp 1420 : 3등 찾기 (0) | 2020.04.07 |
[C언어 코드업 문제풀이] CodeUp 1416 : 2진수 변환 (0) | 2020.04.07 |
댓글()