3216专题

poj 3216 Repairing Company

//可重复的最小路径覆盖 //先用floyd求传递闭包,最小覆盖数=N-最大匹配数 //若不可重复覆盖,则省去floyd过程   #include<iostream> #include<cstdio> #include<cstring> #include<cmath> using namespace std; int n, m, ans; const int INF=0xfffffff;

【51nod】3216 授勋

授勋 Link 解题思路 二进制拆分。 code #include<iostream>#include<cstdio>using namespace std;int n;int main(){cin>>n;while(n--){int a,ans=0;scanf("%d",&a);while(a){ans+=a&1;a>>=1;}printf("%d\n",ans);}}