C/C++の宿題片付けます 124代目at TECH
C/C++の宿題片付けます 124代目 - 暇つぶし2ch441:デフォルトの名無しさん
09/03/22 03:05:55
>>437
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n, *data, key, begin, end, mid, i;

    while(1){
        scanf("%d", &n);
        if(n <= 0) break;
        data = (int *)malloc(sizeof(int) * n);
        for(i = 0; i < n; i++) scanf("%d", &(data[i]));
        scanf("%d", &key);
        begin = 0; end = n - 1;
        for(i = 0; begin <= end; i++){
            mid = (begin + end) / 2;
            if(data[mid] == key){
                i++;
                break;
            }
            if(data[mid] < key) begin = mid + 1;
            else end = mid - 1;
        }
        printf("%d\n", i);
        free(data);
    }
    return 0;
}


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch