uva10474大理石在哪儿where is the marble?

来源:互联网 发布:sql截取日期的年月日 编辑:程序博客网 时间:2024/04/30 09:49

背景:做了这么久的题,唯一一道一次ac的,可见这道题是如何的简单。

思路:思路很清楚的模拟题,先排序再查找。

学习:sort函数和lower_bound函数,sort函数排序就不多说了,lower_bound函数作用是查找一个数组中大于等于x的第一个位置。

#include <iostream>#include <stdio.h>#include <algorithm>using namespace std;int figue[10000];void print(int n,int b){    for(int i=0;i<n;i++)    {        if(figue[i]==b) {printf("%d found at %d\n",b,i+1);return;}        if(figue[i]>b) {printf("%d not found\n",b);return;}    }    printf("%d not found\n",b);    return;}int main(void){    int N,Q,k,game=1;    while(cin>>N>>Q&&N&&Q)    {        printf("CASE# %d:\n",game++);        for(int i=0;i<N;i++)            cin>>figue[i];        sort(figue,figue+N);        while(Q--)        {            cin>>k;            print(N,k);        }    }    return 0;}

0 0