房产网站做那个比较好,腾讯企业邮箱域名格式,做个淘宝客网站怎么做,羽毛球赛事直播平台牛客挑战赛47 D Lots of Edges  思路#xff1a;点的权值最多只有#xff08;117#xff09;-1(131071) ,那我们可以枚举终点的值来算最短路#xff0c;每个点能连边的值都是固定的#xff0c;可以通过递归枚举子集#xff08;技巧#xff09;来找#xff0c;每…牛客挑战赛47 D Lots of Edges  思路点的权值最多只有117-1(131071) ,那我们可以枚举终点的值来算最短路每个点能连边的值都是固定的可以通过递归枚举子集技巧来找每个点最多入队一次所以最多只有131071次枚举时会按位遍历 还有*17 
#include iostream
#include cstdio
#include fstream
#include algorithm
#include cmath
#include deque
#include vector
#include queue
#include string
#include cstring
#include map
#include stack
#include set
#include cstdlib
#define INF 0x3f3f3f3f3f3f3f3f
#define inf 0x3f3f3f3f
#define FILL(a,b) (memset(a,b,sizeof(a)))
#define re register
#define lson rt1
#define rson rt1|1
#define lowbit(a) ((a)-(a))
#define ios std::ios::sync_with_stdio(false);std::cin.tie(0);std::cout.tie(0);
#define fi first
#define rep(i,n) for(int i0;(i)(n);i)
#define rep1(i,n) for(int i1;(i)(n);i)
#define se second
#define scd(a) scanf(%d,a)
#define scdd(a,b) scanf(%d%d,a,b)
#define scddd(a,b,c) scanf(%d%d%d,a,b,c)
#define ac coutans\n
using namespace std;
typedef long long  ll;
typedef unsigned long long  ull;
typedef pairll,ll pii;
int dx[4] {-1,1,0,0},dy[4] {0,0,1,-1};
const ll mod1e97;
const ll N 1e610;
const double eps  1e-4;
//const double piacos(-1);
ll gcd(ll a,ll b){return !b?a:gcd(b,a%b);}
int a[N];
int n,s;
int d[N];
int b[N],q[N];
int tt1,hh0;
void dfs(int k,int y){if(d[k]!infd[k]!0) return;d[k]y;if(b[k]) q[tt]k;for(int ik;i;i-lowbit(i)) dfs(k^lowbit(i),y);
}
void sovle(){FILL(d,0x3f);cinns;for(int i1;in;i){cina[i];b[a[i]]1;}int t(117)-1;//couttendl;q[1]a[s];d[a[s]]0;while(hhtt){//couthh ttendl;int kq[hh];dfs(k^t,d[k]1);}for(int i1;in;i){if(is) cout0 ;else if(d[a[i]]inf) cout-1 ;else coutd[a[i]] ;}
}
int main()
{iosint t1;// cint;while(t--){sovle();}return 0;
}