#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"; }
时间: 2024-10-03 23:24:03