POJ1083

題目LINK

題意解釋

題意是從一個(gè)房子到另一個(gè)房子搬桌子,題意中兩個(gè)搬桌子的進(jìn)程中,如果兩者在使用走廊的過(guò)程中沒(méi)有重疊的部分那么就可以同時(shí)進(jìn)行。這道題整體的思路是imos算法,就是想象一個(gè)軸,軸里有1 2 3 ... n,然后找出每次移動(dòng)桌子的區(qū)間,在用類(lèi)似俄羅斯方塊的方法疊加上去,這道題的最終結(jié)果是疊加后最厚區(qū)間的高度。(建議自行百度1mos算法,十分直觀)

收獲

首先這道題的坑有兩個(gè)。

1.給出的起始點(diǎn)可能小于終點(diǎn) 2.區(qū)間算的時(shí)候,一定是奇數(shù)到偶數(shù),才能做到真正的區(qū)間全覆蓋

代碼技巧
  1. max_element()這個(gè)在algorithm的頭文件里,非常好用

AC代碼

#include <iostream>
#include <stdlib.h>
#include <algorithm>
#include <cstdio>
#include <cstring>
using namespace std;

typedef struct member{
    int s;
    int j;
}member;

member input[200];

void in(int total){
    int i = 0;
    while(total > 0){
        scanf("%d %d",&input[i].s,&input[i].j);
        if(input[i].s > input[i].j){
            int tmp = input[i].s;
            input[i].s = input[i].j;
            input[i].j = tmp;
        }
        if(input[i].j%2 == 1)input[i].j++;//this is a trap
        if(input[i].s%2 == 0)input[i].s--;//
        total--;
        i++;
    }
}

void solve(int total){
    int i = 0;
    int table[400];
    int cost = 0;
    memset(table,0,sizeof(table));
    while(i < total){
        for(int j = input[i].s; j <= input[i].j; j ++){
            table[j]++;
        }
        i++;
    }
    cout << *max_element(table,table + 400)*10 << endl;
}

int main()
{
    int t,total;
    scanf("%d\n",&t);
    while(t > 0){
        scanf("%d\n",&total);
        in(total);
        solve(total);
        t--;
    }
    return 0;
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問(wèn)題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,768評(píng)論 0 33
  • 被介紹了一本好書(shū)Ray Dalio的《原則》,本著看好書(shū)練英語(yǔ)的原則,我打算每天翻譯一頁(yè),一周不少于5頁(yè),希望堅(jiān)持...
    財(cái)才閱讀 154評(píng)論 0 0
  • 我很想把這里面認(rèn)識(shí)我的人全部拉黑,這樣我就會(huì)比較有安全感,真的不喜歡把自己的情緒暴露在認(rèn)識(shí)的人面前,最親的人都不可...
    隆隆嘮嗑小天地閱讀 427評(píng)論 0 1
  • 陳繼科閱讀 588評(píng)論 0 0