#include <stdio.h>
#include <stdlib.h>
// 線形探索:x が最初に見つかった位置を返し、count に個数を入れる
int linear_search(int a[], int n, int x, int *count){
int first_pos = -1;
*count = 0;
for(int i = 0; i < n; i++){
if(a[i] == x){
(*count)++;
if(first_pos == -1){
first_pos = i; // 最初に見つけた位置を記録
}
}
}
return first_pos;
}
int main(void) {
int n, x, i;
int *a;
int ans = -1;
int count = 0;
a
= (int*)malloc(sizeof(int) * n
); if(a == NULL){
return -1;
}
for(i = 0; i < n; i++){
}
ans = linear_search(a, n, x, &count);
if(count > 0)
printf("Found_%d_%ds_count=%d\n", ans
, x
, count
); else
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KIAovLyDnt5rlvaLmjqLntKLvvJp4IOOBjOacgOWIneOBq+imi+OBpOOBi+OBo+OBn+S9jee9ruOCkui/lOOBl+OAgWNvdW50IOOBq+WAi+aVsOOCkuWFpeOCjOOCiwppbnQgbGluZWFyX3NlYXJjaChpbnQgYVtdLCBpbnQgbiwgaW50IHgsIGludCAqY291bnQpewogICAgaW50IGZpcnN0X3BvcyA9IC0xOwogICAgKmNvdW50ID0gMDsKIAogICAgZm9yKGludCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgaWYoYVtpXSA9PSB4KXsKICAgICAgICAgICAgKCpjb3VudCkrKzsKICAgICAgICAgICAgaWYoZmlyc3RfcG9zID09IC0xKXsKICAgICAgICAgICAgICAgIGZpcnN0X3BvcyA9IGk7ICAvLyDmnIDliJ3jgavopovjgaTjgZHjgZ/kvY3nva7jgpLoqJjpjLIKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBmaXJzdF9wb3M7Cn0KIAppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgbiwgeCwgaTsKICAgIGludCAqYTsKICAgIGludCBhbnMgPSAtMTsKICAgIGludCBjb3VudCA9IDA7CiAKICAgIHNjYW5mKCIlZCAlZCIsICZuLCAmeCk7CiAgICBhID0gKGludCopbWFsbG9jKHNpemVvZihpbnQpICogbik7CiAgICBpZihhID09IE5VTEwpewogICAgICAgIHByaW50ZigiRVJST1JcbiIpOwogICAgICAgIHJldHVybiAtMTsKICAgIH0KIAogICAgZm9yKGkgPSAwOyBpIDwgbjsgaSsrKXsKICAgICAgICBzY2FuZigiJWQiLCAmYVtpXSk7CiAgICB9CiAKICAgIGFucyA9IGxpbmVhcl9zZWFyY2goYSwgbiwgeCwgJmNvdW50KTsKIAogICAgaWYoY291bnQgPiAwKQogICAgICAgIHByaW50ZigiRm91bmRfJWRfJWRzX2NvdW50PSVkXG4iLCBhbnMsIHgsIGNvdW50KTsKICAgIGVsc2UKICAgICAgICBwcmludGYoIm5vdCBmb3VuZFxuIik7CiAKICAgIGZyZWUoYSk7CiAgICByZXR1cm4gMDsKfQoK
NTAgNQoxMgkzCTQJMTIJMTEJNQk3CTE1CTE4CTAJMAk1CTEwCTYJMTUJNgk0CTEwCTgJMTYJMTIJOQkxMAkxMQkxMgk5CTUJNwkxMAkxNAkzCTE3CTExCTEwCTcJMTUJNQkyCTYJMwkxOQk3CTgJMTYJMTMJMwkxOAkxMAkxOQk1
50 5
12 3 4 12 11 5 7 15 18 0 0 5 10 6 15 6 4 10 8 16 12 9 10 11 12 9 5 7 10 14 3 17 11 10 7 15 5 2 6 3 19 7 8 16 13 3 18 10 19 5