傳送門:hdu給乙個圖,每個點有權值,點之間有路。現在要求每一條路僅走一次,到達的點異或和最大。輸出最大值,或impossible。
類似一筆畫問題。網上基本用並查集判斷聯通,但可能題目要求圖必須聯通,所以不判也可以。
統計每個點的度數,無向圖不分入度出度。度數為奇數的點只能是0個或2個,否則impossible。如果是2個,那麼異或和只有一種情況,否則存在最大值。
關於異或和,某個點的權參與異或度數/2次,有效次數是 度數/2%2次(b^a^a=b)。另外如果度數為奇數的點是2個,那麼起點是其中乙個,終點是另外乙個,這兩個點需要在各異或一次。如果沒有度數為奇數的點,那麼起點終點相同,這個點需要再異或一次,這時就是存在最大值的情況,需要用乙個迴圈找出最大值。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
const
int oo=0x3f3f3f3f;
const
int maxn=220007;
typedef
long
long ll;
int value[maxn];
int degree[maxn];
int main()
memset(degree,0,sizeof(degree));
for(int i=0;iint t1,t2;
scanf("%d%d",&t1,&t2);
degree[t1]++;degree[t2]++;
}int res=0;
int odd_num=0,flag=0;;
int oddlist1=0,oddlist2=0;
for(int i=1;i<=n;i++)
if(odd_num>2)
}if(flag)
else
}if(odd_num==0)
printf("%d\n",max_res);
}else
if(odd_num==2)}}
return
0;}
HDU5878 HDU5891 2016網路賽青島
a 題意 給出乙個整數n 找出乙個大於等於n 的最小整數m 使得m的質因數只有2 3 5 7 分析 預處理出質因數2 3 5 7的數,超過maxt就行,然後找 b 題意 求1 1 2 1 2 2 1 n 2 分析 題坑,意思是n很大 感覺上越到後來值越小,實際上這個是趨向 2 6,於是小範圍的n直接...
HDU3549 網路流 模板
在此給出我的dinic和ek網路流模板,sap以及dinic的優化日後更新 以hdu3549為樣板給出我的模板 原題 如下 ek by acer.mo include include include include includeusing namespace std int n,m,i bool ...
hdu4280 網路流模版)
驗證了一下網路流的板子題 發現有乙個板子和kuangbin聚聚的板子效率相差不多可能還更高效 kuangbin聚聚寫的是非遞迴的 這個可能更容易敲一點 題目大意就是輸入n,m 找到s t 直接連圖求最大流 附鏈結 include include include include includeusin...