青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

算法學社
記錄難忘的征途
posts - 141,comments - 220,trackbacks - 0
A題

分兩部分求,因為題目數(shù)只有15,所以可以2^15枚舉分組情況(分給L還是分給M)。

接下來求對于同一size的M種顏色的氣球分配給N個題目的最小代價。
排序之后,從大到小貪心的分配就可以了。

 1 #include<iostream>
 2 #include<string>
 3 #include<vector>
 4 using namespace std;
 5 const int inf = ~0u>>2;
 6 int make(vector<int> &flag, vector<int> &num){
 7     int n = num.size(), m = flag.size(),len = min(n,m);
 8     int suma  = 0, sumb = 0;
 9     for(int i = 0; i < n; i++) suma += num[i];
10     for(int i = 0; i < m; i++) sumb += flag[i];
11     if(suma > sumb) return inf;
12     for(int i = 0; i < len; i++) suma -= min(num[i],flag[i]);
13     return suma;
14 }
15 bool cmp(int a,int b){return a>b;}
16 void op(vector<int> s){
17     for(int i = 0; i < s.size(); i++)cout<<s[i]<<" ";cout<<endl; 
18 }
19 class ICPCBalloons{
20     public :
21     int minRepaintings(vector <int> bC, string bS, vector <int> num){
22         int n= num.size();
23         vector<int> M ,L;
24         for(int i =0; i < bS.size(); i++if(bS[i] == 'L') L.push_back(bC[i]); else M.push_back(bC[i]);
25         sort(M.begin(),M.end(),cmp);
26         sort(L.begin(),L.end(),cmp);
27         sort(num.begin(),num.end(),cmp);
28         cout<<"M: "<<endl; op(M);
29         cout<<"L: "<<endl; op(L);
30         int ans = inf;
31         for(int i = 0; i < (1<<n); i++) {
32             vector<int> m,l;
33             for(int j = 0; j < n; j++if(1<<& i) m.push_back(num[j]); else l.push_back(num[j]);
34             int a = make(M,m);
35             int b = make(L,l);
36             //cout<<"m: "<<endl; op(m);
37             //cout<<"l: "<<endl; op(l);
38             ans = min(ans,a+b);
39         }
40         return ans == inf ? -1 : ans;
41     }
42 };

B題

博弈,給若干個有根樹,節(jié)點數(shù)不超過50,兩個人輪流給某個未染色的點染色,這個點一旦被染色,它以及它的所有祖先就都被染色了。
問先手勝還是后手勝。

樹形DP求SG值,復雜度O(n^3)。非常裸...
更大規(guī)模的解法見 
http://www.2333333.tk/182.html


#include<string>
#include
<iostream>
#include
<vector>
#include
<cmath>
using namespace std;
const int N = 55;
int P[N] ,n, dp[N];
vector
<int> G[N];
inline 
void setc(int p,int c){P[c] = p;
    G[p].push_back(c);
}
bool ispar(int s,int p){
    
while(s!=-1){if(s==p)return 1; s=P[s];} return 0;
}
int dfs(int u) {
//    cout<<"u; "<<u<<endl;
    int &ans = dp[u];
    
if(ans != -1) {
        
//cout<<"back"<<endl;
        return ans;
    }
    
bool vis[101= {0};
    
for(int i = 0; i < n; i++if(ispar(i,u)) {
    
//    cout<<"i: "<<i<<endl;
        int v = i, last = -1 ,sg = 0;
        
while(v != P[u]) {
            
for(int j = 0; j < G[v].size(); j ++if(G[v][j] != last) sg ^= dfs(G[v][j]);
            last 
= v;
            v 
= P[v];
        }
        vis[sg] 
= 1;
    }
    
for(int i = 0; i < 101; i++if(!vis[i]) {ans = i; break;}
    
//cout<<"back"<<endl;
    return ans;
}
double dis(int x0,int y0,int x1,int y1){return sqrt(1.0*(x0-x1)*(x0-x1) + 1.0*(y0-y1)*(y0-y1));}
class CirclesGame{
    
public
    
string whoCanWin(vector <int> x, vector <int> y, vector <int> r){
        memset(P,
-1,sizeof(P));
        memset(dp,
-1,sizeof(dp));
        n 
= x.size();
        
for(int i  =0 ; i < n; i++) {
            
int s = -1;
            
for(int j= 0; j < n; j++if(j != i && 1.0*(r[j] - r[i]) > dis(x[i],y[i],x[j],y[j])){
                
//cout<<j<<" "<<i<<" "<<r[j]-r[i]<<" "<<dis(x[i],y[i],x[j],y[j])<<endl;
                if(s == -1 || r[j] < r[s]) s = j;
            }
            
if(s != -1){     
                setc(s,i);
            }
        }
        
//cout<<"endl"<<endl;
    
//    for(int i = 0; i < n; i++) cout<<P[i]<<" ";cout<<endl;
        int ans = 0;
        
for(int i = 0; i < n; i++if(-1 == P[i]) ans ^= dfs(i);
        
return ans ? "Alice" : "Bob";
    }
};
posted on 2012-11-21 16:02 西月弦 閱讀(550) 評論(3)  編輯 收藏 引用 所屬分類: 解題報告

FeedBack:
# re: topcoder srm 561 div1[未登錄]
2012-11-23 13:14 | kaka
不是很明白,能不能詳細說一下第二題的思路?  回復  更多評論
  
# re: topcoder srm 561 div1
2012-11-24 14:30 | 西月弦
@kaka
這個... 就是對于每個局面計算SG值。  回復  更多評論
  
# re: topcoder srm 561 div1[未登錄]
2012-11-24 20:57 | kaka
@西月弦
看完sg函數(shù),終于明白代碼的含義了....  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产日韩欧美精品| 亚洲成色777777女色窝| 欧美丝袜一区二区| 亚洲福利一区| 美日韩精品视频免费看| 欧美在线视频全部完| 国产精品久久久久aaaa| 一区二区三区国产在线观看| 欧美国产亚洲精品久久久8v| 午夜影视日本亚洲欧洲精品| 国产精品国产三级国产专播精品人| 亚洲人成毛片在线播放女女| 欧美激情按摩| 老牛嫩草一区二区三区日本| 国语自产在线不卡| 久久深夜福利| 久久精品免费观看| 激情综合在线| 欧美福利视频在线| 欧美激情精品久久久久久黑人 | 国产精品一区视频| 久久福利一区| 久久精品在线观看| 亚洲国产成人精品久久久国产成人一区 | 久久精品视频网| 在线观看日韩| 亚洲国产专区校园欧美| 美国三级日本三级久久99| 亚洲欧洲另类| 夜夜夜久久久| 国产一区二区激情| 亚洲国产精品va| 欧美性猛交xxxx乱大交蜜桃| 久久精品国产亚洲5555| 久久夜色精品国产| 一本色道久久综合亚洲91| 久久综合狠狠综合久久激情| 亚洲黄色大片| 日韩午夜在线电影| 国产人成精品一区二区三| 欧美~级网站不卡| 欧美三级视频在线| 久久久久国色av免费观看性色| 欧美成人xxx| 香蕉视频成人在线观看| 蜜臀91精品一区二区三区| 亚洲一区二区高清| 久久一区二区三区四区| 亚洲一级二级| 久久久久女教师免费一区| 一区二区三区精品| 久久国产婷婷国产香蕉| 亚洲视屏一区| 蜜桃精品久久久久久久免费影院| 午夜精品www| 欧美激情精品久久久久久变态| 久久久精品一区二区三区| 欧美日产在线观看| 麻豆乱码国产一区二区三区| 国产精品乱人伦一区二区 | 性色av一区二区怡红| 日韩视频一区二区| 久久午夜影视| 久久久久久夜精品精品免费| 欧美日韩一区二区三区在线 | 亚洲激情成人网| 欧美日韩国产综合视频在线观看中文 | 欧美一级视频精品观看| 亚洲免费精彩视频| 久久成人一区二区| 午夜精品婷婷| 欧美日韩直播| 亚洲欧洲一区二区三区| 黄色日韩在线| 亚洲专区一区| 亚洲专区一二三| 久久精品国产亚洲a| 亚洲一区二区精品在线观看| 亚洲国产美女精品久久久久∴| 亚洲欧美日韩综合aⅴ视频| av成人老司机| 欧美激情一区二区久久久| 牛牛精品成人免费视频| 在线播放豆国产99亚洲| 久久精品盗摄| 国产精品区一区| 亚洲男女自偷自拍图片另类| 欧美mv日韩mv国产网站| 麻豆精品一区二区综合av| 国产一区三区三区| 欧美一区二区三区电影在线观看| 亚洲欧美激情视频| 国产精品福利在线| 中国女人久久久| 亚洲综合社区| 国产精品青草久久| 国产一区二区中文| 欧美成人午夜剧场免费观看| 国产欧美日韩不卡| 先锋影音国产一区| 久久国产婷婷国产香蕉| 国产欧美精品va在线观看| 亚洲午夜国产一区99re久久 | 国产日韩在线一区二区三区| 午夜影院日韩| 久久久最新网址| 伊人久久婷婷色综合98网| 蜜桃av噜噜一区| 亚洲欧洲日本一区二区三区| 在线性视频日韩欧美| 国产精品色婷婷| 久久久噜噜噜久久中文字免| 欧美成人精品1314www| 日韩视频专区| 在线视频精品| 亚洲电影网站| 亚洲国产精品高清久久久| 免费91麻豆精品国产自产在线观看| 亚洲电影免费观看高清完整版在线观看 | 欧美视频在线免费| 亚洲午夜视频在线观看| 久久久精品2019中文字幕神马| 亚洲成色www8888| 欧美日韩精品三区| 亚洲欧美激情在线视频| 欧美激情网站在线观看| 亚洲欧美成人一区二区三区| 欧美日韩999| 国产精品卡一卡二卡三| 午夜精品久久| 亚洲国产一区二区在线| 亚洲自拍偷拍视频| 激情五月婷婷综合| 欧美日韩精品一区视频 | 国产老肥熟一区二区三区| 久久久久久久国产| 一本色道久久综合亚洲精品不卡| 欧美在线视频观看| 亚洲欧洲另类国产综合| 亚洲免费观看高清完整版在线观看| 欧美日韩国产三级| 欧美在线视频不卡| 99国产精品久久久久久久成人热| 久久国产88| 一区二区三区国产在线| 伊人久久男人天堂| 一区二区久久久久久| 欧美在线视频全部完| 亚洲国产一区二区三区在线播 | 最新日韩精品| 国产日韩一区二区三区在线播放| 免费高清在线一区| 欧美一区二区三区播放老司机| 一本色道久久99精品综合| 欧美成人网在线| 久久综合伊人77777| 久久精品夜色噜噜亚洲a∨| 亚洲欧美日韩精品在线| 一区二区三区视频在线看| 亚洲伦理在线| 亚洲七七久久综合桃花剧情介绍| 狠狠色丁香久久婷婷综合丁香| 国产精品视频yy9299一区| 欧美日韩免费高清一区色橹橹| 欧美福利电影在线观看| 狂野欧美激情性xxxx| 久久亚洲综合色| 久久久久国产免费免费| 久久久国产精品一区二区中文| 欧美一区深夜视频| 亚洲欧美日韩综合国产aⅴ| 亚洲午夜电影| 亚洲欧美日韩精品久久久| 亚洲综合色丁香婷婷六月图片| 宅男66日本亚洲欧美视频| 一区二区三区精品视频| 正在播放亚洲一区| 亚洲专区在线| 欧美在线视频免费播放| 久久成人国产精品| 久久婷婷影院| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美一区永久视频免费观看| 亚洲综合视频在线| 午夜一区在线| 久久精品国产一区二区三区免费看| 欧美在线一区二区三区| 欧美在线视频一区| 裸体一区二区三区| 91久久精品国产91性色tv| 亚洲人成小说网站色在线| 日韩一级大片在线| 亚洲综合日韩在线| 久久精品国产久精国产爱| 免费亚洲一区| 欧美网站在线观看| 国自产拍偷拍福利精品免费一| 亚洲激情另类| 久久激情网站| 欧美黄色影院|