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

隨筆 - 87  文章 - 279  trackbacks - 0
<2025年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

潛心看書研究!

常用鏈接

留言簿(19)

隨筆分類(81)

文章分類(89)

相冊

ACM OJ

My friends

搜索

  •  

積分與排名

  • 積分 - 219409
  • 排名 - 118

最新評論

閱讀排行榜

評論排行榜

Bugs Integrated, Inc.
Time Limit:15000MS  Memory Limit:30000K
Total Submit:1180 Accepted:309
Case Time Limit:5000MS

Description
Bugs Integrated, Inc. is a major manufacturer of advanced memory chips. They are launching production of a new six terabyte Q-RAM chip. Each chip consists of six unit squares arranged in a form of a 2*3 rectangle. The way Q-RAM chips are made is such that one takes a rectangular plate of silicon divided into N*M unit squares. Then all squares are tested carefully and the bad ones are marked with a black marker.


Finally, the plate of silicon is cut into memory chips. Each chip consists of 2*3 (or 3*2) unit squares. Of course, no chip can contain any bad (marked) squares. It might not be possible to cut the plate so that every good unit square is a part of some memory chip. The corporation wants to waste as little good squares as possible. Therefore they would like to know how to cut the plate to make the maximum number of chips possible.
Task
You are given the dimensions of several silicon plates and a list of all bad unit squares for each plate. Your task is to write a program that computes for each plate the maximum number of chips that can be cut out of the plate.

 

Input
The first line of the input file consists of a single integer D (1 <= D <= 5), denoting the number of silicon plates. D blocks follow, each describing one silicon plate. The first line of each block contains three integers N (1 <= N <= 150), M (1 <= M <= 10), K (0 <= K <= MN) separated by single spaces. N is the length of the plate, M is its height and K is the number of bad squares in the plate. The following K lines contain a list of bad squares. Each line consists of two integers x and y (1 <= x <= N, 1 <= y <= M) ?coordinates of one bad square (the upper left square has coordinates [1, 1], the bottom right is [N,M]).

Output
For each plate in the input file output a single line containing the maximum number of memory chips that can be cut out of the plate.

Sample Input

2
6 6 5
1 4
4 6
2 2
3 6
6 4
6 5 4
3 3
6 1
6 2
6 4

 

Sample Output

3
4

 

Source
CEOI 2002

CODE:

#include <iostream>
using namespace std;

int g[150][10], blk[10];
int d[4][60000];
int e[11= {1392781243729218765611968359049};
int n, m, kn;
int can1, can2, b[10][60000];
int *l0, *l1, *l2, *l3, *bit0, *bit1, *bit2;

void build() {
    
int i, j, tmp;
    
for (i=0; i<e[10]; i++{
        j 
= 0; tmp = i;
        
while (tmp > 0{
            b[j][i] 
= tmp % 3;
            tmp 
/= 3;
            j
++;
        }

    }

}
 

inline 
int maxt(int a, int b) {
    
return a > b ? a : b;
}


void solve() {
    
int i, j, k, x, y, a1, a2, p, c;
    scanf(
"%d%d%d"&n, &m, &kn);
    memset(g, 
0sizeof(g));
    memset(d, 
0sizeof(d));
    
for (i=0; i<kn; i++{
        scanf(
"%d%d"&x, &y);
        g[x
-1][y-1= 1;
    }

    
for (i=0; i<m; i++) blk[i] = 1 - g[0][i];
    
for (i=1, c=2; i<n; i++{
        
for (j=0; j<m; j++{
            
if (g[i][j]) blk[j] = 0;
            
else blk[j]++;
            c 
= (c+1)%4;
            can1 
= (j>0 && blk[j]>2 && blk[j-1]>2);
            can2 
= (j>1 && blk[j]>1 && blk[j-1]>1 && blk[j-2]>1);
            a1 
= 2*e[j]+2*e[j-1];
            a2 
= e[j]+e[j-1]+e[j-2];
            l0 
= d[c]; l1 = d[(c+3)%4]; l2 = d[(c+2)%4]; l3 = d[(c+1)%4];
            bit0 
= b[j]; 
            
if (j>0) bit1 = b[j-1]; 
            
if (j>1) bit2 = b[j-2];
            
for (p=0; p<e[m]; p++{
                
if (bit0[p]) {
                    l0[p] 
= l1[p-e[j]];
                }
 else {
                    l0[p] 
= l1[p];
                    
if (j>0 && !bit1[p]) {
                        
if (can1) l0[p] = maxt(l0[p],l2[p+a1]+1);
                        
if (can2 && !bit2[p]) l0[p] = maxt(l0[p], l3[p+a2]+1);
                    }

                }

            }

        }

    }

    printf(
"%d\n", d[c][0]);
}


int main() {
    build();
    
int caseTime;
    scanf(
"%d"&caseTime);
    
while (caseTime--{
        solve();
    }

    
return 0;
}


 
posted on 2007-04-18 11:42 閱讀(1789) 評論(0)  編輯 收藏 引用 所屬分類: ACM題目
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产一区二区三区成人欧美日韩在线观看 | 午夜精品久久久| 国际精品欧美精品| 国产日本亚洲高清| 亚洲欧美韩国| 久久精品综合| 久久琪琪电影院| 另类酷文…触手系列精品集v1小说| 久久精品国产精品亚洲综合| 可以免费看不卡的av网站| 久久久久在线观看| 亚洲一二三区在线观看| 欧美在线视频免费播放| 久久久久久久高潮| 欧美精品国产一区| 国产精品网站视频| 91久久在线播放| 欧美一级专区| 欧美激情精品久久久久久久变态| 亚洲精品网址在线观看| 午夜日韩视频| 欧美人与禽性xxxxx杂性| 国产精品社区| 亚洲精品五月天| 国产综合亚洲精品一区二| 亚洲日本免费| 久久久久久久久久久久久女国产乱| 亚洲成色777777女色窝| 日韩视频第一页| 久久全国免费视频| 欧美一二三区在线观看| 久久久99精品免费观看不卡| 亚洲国产老妈| 欧美亚洲在线视频| 国产精品h在线观看| 亚洲国产日本| 久久久久久久999| 亚洲视频在线观看一区| 欧美高清视频在线观看| 狠狠综合久久av一区二区老牛| 在线一区免费观看| 亚洲国产精品精华液2区45| 久久www成人_看片免费不卡| 亚洲电影成人| 国产一区激情| 久久国产直播| 欧美日韩美女在线观看| 在线不卡中文字幕播放| 久久精品在线播放| 亚洲直播在线一区| 欧美剧在线观看| 亚洲第一在线综合网站| 亚洲综合999| 欧美日韩系列| 一区二区三区日韩在线观看| 欧美黑人国产人伦爽爽爽| 欧美一区二区三区四区视频 | 亚洲手机成人高清视频| 国产精品另类一区| 宅男66日本亚洲欧美视频| 欧美激情国产日韩精品一区18| 欧美影院午夜播放| 国产一级精品aaaaa看| 久久gogo国模啪啪人体图| 亚洲天堂av图片| 亚洲免费中文字幕| 国产精品一区二区欧美| 欧美一区二区视频观看视频| 亚洲午夜在线观看| 国产三级欧美三级| 欧美在线观看网站| 亚洲午夜av在线| 一区二区高清在线| 在线一区二区三区四区| 国产精品激情偷乱一区二区∴| 亚洲在线视频免费观看| 亚洲一二三区在线观看| 国产精品羞羞答答| 久久精品日韩一区二区三区| 欧美尤物一区| 亚洲人成网站精品片在线观看 | 亚洲久久一区| 亚洲免费观看在线视频| 国产精品影片在线观看| 久久精品国产99国产精品| 亚洲激情综合| 亚洲欧美电影院| 在线免费一区三区| 亚洲日产国产精品| 国产精品免费网站| 美腿丝袜亚洲色图| 午夜免费日韩视频| 免费不卡在线观看| 欧美日韩国产精品一卡| 久久国产天堂福利天堂| 美女网站在线免费欧美精品| 一卡二卡3卡四卡高清精品视频| 日韩亚洲欧美一区二区三区| 国产揄拍国内精品对白| 欧美人妖另类| 欧美精品一级| 欧美在线一二三四区| 久久综合中文色婷婷| 99在线|亚洲一区二区| 亚洲欧美视频在线| 亚洲精品视频免费| 香蕉免费一区二区三区在线观看 | 欧美国产三级| 久久精品国产成人| 欧美另类人妖| 久久久久久久成人| 国产精品av一区二区| 国产一区二区久久精品| 亚洲精品一区二区三区四区高清| 老牛国产精品一区的观看方式| 欧美高清你懂得| 久久久天天操| 国产伦精品一区二区三区高清 | 美女网站在线免费欧美精品| 欧美午夜精品久久久久久久 | 国产精品丝袜91| 亚洲精品一二| 亚洲人成77777在线观看网| 久久精品人人做人人爽电影蜜月| 国产伦精品一区二区三区| 亚洲精品中文在线| 日韩视频免费看| 麻豆精品在线视频| 久久五月婷婷丁香社区| 国产精品―色哟哟| 亚洲美女精品久久| 亚洲婷婷在线| 国产欧美日韩精品专区| 一本色道久久综合精品竹菊| 99视频精品| 欧美日韩成人一区| 最新国产拍偷乱拍精品| 亚洲国产天堂久久综合| 久久综合亚州| 亚洲福利国产| 中国成人黄色视屏| 久久综合给合久久狠狠狠97色69| 久久婷婷丁香| 亚洲第一页中文字幕| 欧美jizz19hd性欧美| 亚洲电影天堂av| 日韩一级在线观看| 欧美三级第一页| 欧美在线视屏| 精品成人国产| 欧美电影打屁股sp| 亚洲美女av网站| 午夜精品久久一牛影视| 国产午夜精品理论片a级大结局| 欧美一区亚洲二区| 欧美精品在线观看播放| 亚洲欧洲av一区二区| 国产亚洲人成a一在线v站| 一本色道久久精品| 亚洲人成小说网站色在线| 久久综合色影院| 亚洲激情第一页| 这里是久久伊人| 欧美视频观看一区| 午夜精品久久久久久久男人的天堂| 久久av一区二区三区漫画| 国内精品久久久久影院优| 蜜桃av一区二区在线观看| 亚洲人成毛片在线播放| 欧美一级视频免费在线观看| 怡红院av一区二区三区| 日韩视频中文字幕| 久久动漫亚洲| 国产精品美女999| 久久精品国产77777蜜臀| 亚洲高清免费视频| 性久久久久久| 亚洲乱码国产乱码精品精可以看| 国产精品成人v| 在线成人激情视频| 欧美一级视频免费在线观看| 亚洲国产精品va在线看黑人| 亚洲性线免费观看视频成熟| 一区二区三区自拍| 国产精品国产一区二区| 美女主播一区| 欧美伊人久久| 99精品国产热久久91蜜凸| 久久久国产精品一区二区中文| 日韩一级黄色av| 亚洲第一在线综合网站| 国产精品二区在线| 欧美成人午夜影院| 久久国产毛片| 亚洲女女做受ⅹxx高潮| 亚洲精品乱码久久久久久按摩观| 久久久国产精品一区二区中文| 亚洲一区二区三区乱码aⅴ| 欧美成熟视频| 久久精品一二三区|