码迷,mamicode.com
首页 > 其他好文 > 详细

剑指offer第41题 和为s的两个数

时间:2015-08-13 17:24:13      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:

#include<iostream>
using namespace std;

bool sumk(int*list,int length,int*num1,int*num2,int k)
{
    int have=false;
    if(list==NULL||length<=0||num1==NULL||num2==NULL)
        return have;
    *num1=0;
    *num2=0;
    int i=0;
    int j=length-1;
    while(i<j)
    {
        if(list[i]+list[j]==k)
            break;
        else if(list[i]+list[j]>k)
            j--;
        else if(list[i]+list[j]<k)
            i++;
    }
    if(list[i]+list[j]==k)
    {
        *num1=list[i];
        *num2=list[j];
        have=true;
    }
    return have;
}
int main()
{
    int a[1000];
    int c;
    int i=0;
    while(cin>>c)
    {
        a[i]=c;
        i++;
        if(cin.get()==\n)
            break;
    }
    int k;
    cin>>k;
    int num1;
    int num2;
    if(sumk(a,i,&num1,&num2,k))
    cout<<num1<< <<num2;
    else
        cout<<"meiyou";
}

 

剑指offer第41题 和为s的两个数

标签:

原文地址:http://www.cnblogs.com/zhangyee/p/4727776.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!