zoj 3596 BFS+大数简单运算

/*
题意:
   能否找到一个数,只由0-9 中的m种数构成,而且在能整除x的情况下尽量小;
  能 输出 z=x*y;
  不能 输出 impossible;
  解法1:
  可以设置节点,节点信息用了几种数, 节点值mod x的数值,
   数值的转换可以在节点之间连边,之后:
 尽量小 — 找到最少的步数
  不能 —走不到;
*/
#include
#include
#include
#include
#include
#include
using namespace std;
#define Size 1001
typedef struct{ int m; int s; int k; }node;
int dp[Size][(1<<10)-1],pre[Size*((1<<10)-1)+5],n,m,t,cnt;
node q[Size*((1<<10)-1)+5];
char n1[200000],n2[200000];
int bfs()
{
	node m1,m2;t=0;
	for(int i=1;i<=9;i++)
	{
		m1.m=i%m;m1.s=1<

你可能感兴趣的:(BFS,数学)