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

posts - 12,  comments - 40,  trackbacks - 0

http://acm.pku.edu.cn/JudgeOnline/problem?id=3139
Balancing the Scale
去年上海賽區(qū)的B題,比賽沒有做出來

注意隱含條件:每個數(shù)字不大于1024
1、有這個條件后,則表達式之和不超過1024 * 10,這樣就可以開一個10240的表,記錄得到當前值的所有4字組合(用16位2進制表示)

2、對于10240內的每兩個值進行配對(只要兩個4字組合中8個數(shù)字沒有重復的數(shù)字即可),每配一個對,則說明這個8字組合的分解方法數(shù)目加1(這個方法數(shù)目記錄在一個數(shù)組中,也用16位2進制表示8字組合)
3、對于每兩個互補的8字組合,他們的分解方法數(shù)目相乘然后求和即是答案
posted on 2007-08-09 22:34 LSM 閱讀(939) 評論(1)  編輯 收藏 引用 所屬分類: 其他

FeedBack:
# re: Poj 3139-Balancing the Scale[未登錄]
2008-12-21 08:41 | feng
#include <iostream>
#include <algorithm>
#include <cstring>

using namespace std;

const int MAX_VAL = 1024 * 4 + 1023 * 3 + 1022 * 2 + 1021;
const int UNI_16 = 0xFFFF;

struct Node {
int comb;
int cnt;
Node* next;

Node(int c, Node* n) {
comb = c;
cnt = 1;
next = n;
}
};

Node* g_value[MAX_VAL + 1];
int g_num[16];
int g_cnt8[UNI_16];

void addValue(int value, int comb);
bool card4(int set, int* num);
void clear();
void getAllCnts8();
void getAllValues4();

void addValue(int value, int comb) {
Node*& head = g_value[value];
if (head != NULL && head->comb == comb) {
head->cnt++;
}
else {
Node* node = new Node(comb, head);
head = node;
}
}

//If the cardinality of the set is 4,
//then put the 4 numbers in to array num and return true.
bool card4(int set, int* num) {
int card = 0;
int mask = 1;
for (int i = 0; i < 16; i++) {
if (mask & set) {
if (card == 4) {
card = 0;
break;
}
num[card] = g_num[i];
card++;
}
mask <<= 1;
}
return card == 4;
}

void clear() {//Free all the linked lists.
for (int i = 0; i <= MAX_VAL; i++) {
if (g_value[i] != NULL) {
Node* p = g_value[i];
while (p != NULL) {
Node* pre = p;
p = p->next;
delete pre;
}
g_value[i] = NULL;
}
}
}

void getAllCnts8() {
memset(g_cnt8, 0, sizeof(g_cnt8));
for (int val = 0; val <= MAX_VAL; val++) {
if (g_value[val] != NULL) {
for (Node* i = g_value[val]; i != NULL; i = i->next) {
for (Node* j = i->next; j != NULL; j = j->next) {
if ((i->comb & j->comb) == 0) {
g_cnt8[i->comb | j->comb] += i->cnt * j->cnt;
}
}
}
}
}
}

void getAllValues4() {
sort(g_num, g_num + 16);//Must sort, or "next_permutation()" won't work.
int num[4];
for (int comb = 0xF; comb <= 0xF000; comb++) {
if (card4(comb, num)) {
do {
int value = num[0] * 4 + num[1] * 3 + num[2] * 2 + num[3];
addValue(value, comb);
} while (next_permutation(num, num + 4));
}
}
}

bool input() {
bool hasNext = false;
cin >> g_num[0];
if (g_num[0] != 0) {
hasNext = true;
for (int i = 1; i < 16; i++) {
cin >> g_num[i];
}
}
return hasNext;
}

int solve() {
getAllValues4();
getAllCnts8();
int cnt = 0;
for (int comb8 = 0xFF; comb8 <= 0xFF00; comb8++) {
cnt += g_cnt8[comb8] * g_cnt8[comb8 ^ UNI_16];
}
return cnt / 2;
}

int main() {
memset(g_value, 0, sizeof(g_value));
int i = 1;
while (input()) {
cout << "Case " << i << ": " << solve() << endl;
clear();
i++;
}
return 0;
}

  回復  更多評論
  
<2007年8月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

常用鏈接

留言簿(4)

隨筆分類

隨筆檔案

牛牛 ACM/ICPC

最新隨筆

搜索

  •  

最新隨筆

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产欧亚日韩视频| 欧美中文字幕第一页| 亚洲精品亚洲人成人网| 亚洲欧美色婷婷| 欧美在线视频观看| 欧美日韩直播| 国产精品极品美女粉嫩高清在线| 日韩亚洲欧美在线观看| 99精品欧美一区二区三区综合在线| 牛人盗摄一区二区三区视频| 亚洲国产一区二区三区青草影视| 欧美日韩国产区| 欧美一级大片在线免费观看| 久久亚洲综合网| 亚洲欧美成aⅴ人在线观看| 国产精品久久久免费| 久久亚洲综合色| 欧美精品成人| 欧美一区二区三区在线观看视频| 黄色一区二区在线观看| 国产视频丨精品|在线观看| 老司机午夜精品| 亚洲电影一级黄| 免费精品视频| 激情文学一区| 欧美视频一区二区在线观看 | 亚洲无线一线二线三线区别av| 亚洲电影在线播放| 国产啪精品视频| 国产精品外国| 国产精品专区h在线观看| 美女精品在线观看| 亚洲男女毛片无遮挡| 欧美黑人国产人伦爽爽爽| 久久精品国产77777蜜臀| 欧美精品电影在线| 中文亚洲视频在线| 久久爱www.| 亚洲欧美日韩成人高清在线一区| 久久久亚洲人| 亚洲精品1234| 亚洲九九精品| 亚洲福利视频免费观看| 亚洲全部视频| 在线综合+亚洲+欧美中文字幕| 欧美国产亚洲视频| 亚洲精品美女91| 在线视频日本亚洲性| 久久久久久一区| 国产欧美日韩| 亚洲三级视频| 最新国产乱人伦偷精品免费网站| 国产欧美1区2区3区| 激情自拍一区| 久久精品国产v日韩v亚洲 | 亚洲一区二区视频在线观看| 蜜桃av一区二区| 在线视频欧美日韩精品| 亚洲砖区区免费| 欧美巨乳在线| 国内精品久久久久久久97牛牛| 99视频有精品| 久久精品一区蜜桃臀影院| 久久国产精品久久久久久| 国产免费成人av| 欧美电影免费网站| 国产精品日韩欧美大师| 韩国av一区二区三区四区| 黄色精品免费| 国产毛片一区| 欧美午夜精品久久久久久浪潮| 久久深夜福利免费观看| 亚洲靠逼com| 亚洲中字黄色| 亚洲国产精品t66y| 欧美大色视频| 亚洲第一精品在线| 一区二区三区四区国产| 欧美日本精品一区二区三区| 99视频+国产日韩欧美| 亚洲伦伦在线| 欧美国内亚洲| 91久久精品国产91性色tv| 欧美在线观看视频| 亚洲成色最大综合在线| 午夜日韩在线| 日韩午夜中文字幕| 国产精品久久久一区二区三区 | 精品电影在线观看| 亚洲日韩第九十九页| 亚洲国产老妈| 欧美日韩国产在线播放| 亚洲每日在线| 亚洲午夜精品久久久久久浪潮| 亚洲一卡二卡三卡四卡五卡| 欧美成人乱码一区二区三区| 亚洲伦理久久| 欧美日韩国内| 亚洲国产成人不卡| 国产日韩欧美综合精品| 9人人澡人人爽人人精品| 久久久国产91| 亚洲愉拍自拍另类高清精品| 久久中文久久字幕| 国产精品剧情在线亚洲| 欧美亚洲视频在线观看| 国际精品欧美精品| 亚洲欧美激情视频在线观看一区二区三区| 国产日韩欧美视频| 亚洲欧洲一区二区在线播放| 欧美日本韩国一区二区三区| 久久国产一区二区| 国产精品久久久| 亚洲性夜色噜噜噜7777| 欧美大片在线观看| 欧美成人乱码一区二区三区| 亚洲影视综合| 欧美高清在线一区二区| 日韩视频精品在线观看| 先锋影音久久| 亚洲高清久久久| 黑人巨大精品欧美黑白配亚洲| 欧美中文字幕视频| 国产精品久久久久91| 亚洲高清色综合| 欧美大片免费久久精品三p | 欧美综合国产精品久久丁香| 永久域名在线精品| 一区二区av在线| 亚洲日产国产精品| 久久综合九色| 久久亚洲综合色一区二区三区| 国产精品免费视频观看| 9久re热视频在线精品| 亚洲经典在线看| 欧美mv日韩mv亚洲| 欧美a级一区| 好吊日精品视频| 久久精品国产亚洲一区二区| 欧美在线免费视频| 国产欧美日韩不卡| 午夜欧美视频| 久久男人资源视频| 狠狠色综合网| 久久久久久久综合| 鲁大师成人一区二区三区| 国产亚洲网站| 久久久精品国产一区二区三区| 午夜精品久久久久影视| 欧美日韩国产专区| 亚洲午夜电影| 羞羞色国产精品| 国产专区精品视频| 久久男女视频| 免费欧美视频| 亚洲乱码一区二区| 欧美日韩在线不卡| 亚洲视频在线观看三级| 久久综合一区二区| 欧美精品一区二区三区在线看午夜| 欧美电影免费| 一区二区高清在线观看| 国产女人18毛片水18精品| 欧美一区二区视频97| 免费中文字幕日韩欧美| 99re66热这里只有精品4| 国产精品hd| 久久www成人_看片免费不卡| 亚洲高清视频在线观看| 亚洲视频一二| 永久久久久久| 国产精品久久久亚洲一区| 久久精品国产v日韩v亚洲| 亚洲激情一区| 久久久久国产一区二区| 日韩视频在线一区| 国产精品一区二区久久国产| 久久视频在线视频| 一本色道久久综合亚洲精品按摩| 久久不射中文字幕| 亚洲六月丁香色婷婷综合久久| 国产精品久久久久aaaa樱花| 久久精品国产亚洲aⅴ| 亚洲片国产一区一级在线观看| 欧美一区二区三区在| 亚洲美女网站| 国产亚洲一区二区三区| 欧美日韩国产在线播放| 久久免费精品日本久久中文字幕| 这里是久久伊人| 亚洲大片一区二区三区| 欧美在线日韩在线| 99re66热这里只有精品4| 在线观看91精品国产入口| 国产精品国产成人国产三级| 久久综合久久综合久久| 午夜精品一区二区三区在线视| 亚洲国产精品成人| 久热成人在线视频| 久久av最新网址|