CodeForces Manthan, Codefest 16 A Ebony and Ivory 扩展欧几里德(其实暴力直接搞就可以)

求是否存在两个非负系数x,y,使得ax+by=c。a,b属于[1,100],c属于[1,10000]。

数据范围小啊,直接暴力枚举x或者枚举y就行。

数学方法的话应该是扩展欧几里德求不定方程,正好刚看了这个,就当复习了

代码:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;
int gcd(int a, int b)//普通方法
{
	int m, n, r;
	m = a >= b ? a : b;//m>=n
	n = a= 0)
				ans = 1;
		}
		else if (q < 0)
		{
			int t = (-q - 1) / (a / d) + 1;
			if ((p - (b / d)*t) >= 0)
				ans = 1;
		}
		else
			ans = 1;
	}
	if (ans)
		printf("Yes\n");
	else
		printf("No\n");
	//while (1);
	return 0;
}

你可能感兴趣的:(CodeForces,暴力枚举)