[C언어 코드업 문제풀이] CodeUp 1551 : [기초-함수작성] 함수로 원하는 값의 위치 리턴하기 1
ET의 공부/C언어 연습문제[ 코드업 ]2020. 7. 3. 07:40
코드업 1551번 함수로 원하는 값의 위치 리턴하기1 문제 풀이 해답입니다.
1. 문제 설명
*주의사항 : 이 (함수 제출형) 문제는 함수 부분만 작성해서 제출해야 오류 없이 채점이 됩니다.
미리 작성되어있는 코드를 읽고 해석해서, 함수 부분만 작성해서 제출하면 됩니다.
작성한 함수의 테스트를 위해서는 제시된 코드를 복사해 사용하면 되고, 제출은 함수 부분만 하세요.
------
n 개의 정수를 배열로 입력 받고,
원하는 값 k가 저장되어있는 가장 처음 위치를 출력하시오.
(원하는 값 k값이 저장되어있지 않은 경우에는 –1을 출력한다.)
단, 함수형 문제이므로 함수 f()만 작성하시오.
[함수형 문제란??]
함수형 문제는 기본적인 main() 등은 미리 작성되어 있습니다.
미리 작성되어 있는 프로그램은 다음과 같습니다.
미리 작성된 프로그램을 복사해 붙여 넣은 후 함수 부분을 설계하여 작성해 넣고,
테스트 한 후, 함수 부분만 제출하세요.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include <stdio.h>
int n, d[100010], k;
// 이 부분에 들어가야 될 코드를 작성하여 제출
int main()
{
scanf("%d", &n);
for(int i=1; i<=n; i++)
scanf("%d", &d[i]);
scanf("%d", &k);
printf("%d\n", f(k));
}
|
2. 입력
첫 줄에 데이터의 개수 n,
두 번째 줄에 n개의 데이터가 공백을 두고 입력된다.
세 번째 줄에 찾아야하는 값 k가 입력된다.
(1 <= n <= 100000)
(-2147483648 <= k <= 2147483647)
3. 출력
k값이 가장 처음 나타나는 위치를 출력한다.
(k값이 저장되어있지 않은 경우에는 –1을 출력한다.)
4. 입력 예시
5
5 2 3 2 4
2
5. 출력 예시
2
6. 문제 풀이
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
|
#include <stdio.h>
int n, d[100010], k;
int f(int N) {
int index = 0;
for (int i = 0; i <= 100000; i++) {
if (d[i] == N) {
index = i;
break;
}
else {
index = -1;
}
}
return index;
}
int main()
{
scanf("%d", &n);
for(int i=1; i<=n; i++)
scanf("%d", &d[i]);
scanf("%d", &k);
printf("%d\n", f(k));
}
|
'ET의 공부 > C언어 연습문제[ 코드업 ]' 카테고리의 다른 글
[C언어 코드업 문제풀이] CodeUp 1553 : [기초-함수작성] 함수로 정수 올림 한 값 리턴하기 (0) | 2020.07.03 |
---|---|
[C언어 코드업 문제풀이] CodeUp 1552 : [기초-함수작성] 함수로 소수 부분만 리턴하기 (0) | 2020.07.03 |
[C언어 코드업 문제풀이] CodeUp 1550 : [기초-함수작성] 함수의 양의 제곱근의 정수 부분만 리턴하기 (0) | 2020.07.02 |
[C언어 코드업 문제풀이] CodeUp 1549 : [기초-함수작성] 함수로 절댓값 리턴하기 (0) | 2020.07.02 |
[C언어 코드업 문제풀이] CodeUp 1548 : [기초-함수작성] 함수로 학점 리턴하기 (0) | 2020.07.02 |
댓글()