two points

问题描述

  • 给定一个递增的正整数序列和一个正整数M,求序列中的两个不同位置的a和b,使它们的和恰好为M,输出所有满足条件的方案。

代码

//给定一个递增的正整数序列和一个正整数M,求序列中的两个不同位置的a和b,
//使它们的和恰好为M,输出所有满足条件的方案。
int nums[] = { 1,2,3,4,5,6 };
int n = 6;
void getF(int M)
{
	int start = 0;
	int end = n-1;
	while (end > start)
	{
		if (nums[start] + nums[end] > M)
		{
			end--;
		}
		else if (nums[start] + nums[end] == M)
		{
			//other
			start++;
			end--;
		}
		else {
			start++;
		}
	}
}
posted @ 2021-08-15 10:09  小帆敲代码  阅读(10)  评论(0编辑  收藏  举报