解題報告 poj3087

2021-10-24 00:24:46 字數 757 閱讀 9633

字串的題最好還是用string,比char陣列方便很多

sacnf讀入字元會讀入回車,需要用getchar()消除

多個用例的情況下注意清空

第一次ce,因為poj不支援c++11所以不能使用雜湊表

第一次wa,加了乙個清空字元陣列e的語句

第二次wa,修改了第47行的memcpy,對於memcpy函式第三個引數是要複製過去的位元組大小,要複製4個int就填4*sizeof(int),當然由於char的大小是1所以直接填大小也行。在這裡為什麼sizeof(s2)不對呢,因為s2的大小不僅僅是這一次使用的,他早就被擴充了

#include #include #include #include using namespace std;

const int maxn = 210;

char s1[maxn],s2[maxn],e[maxn];

setst;

int res;

int t,n;

bool shuffle(char *s1,char*s2)

else

}temp[2*n] = '\0';

res++;

bool iseuq = true;

for (int i=0;iif(!iseuq)

else

}else

}int main()

printf("%d %d\n",j,res);

}return 0;

}

poj 3087(一道簡單的模擬)

題目是乙個很明顯的模擬,兩個等長字串交錯合併,並更新兩個字串為合併後字串的前後兩個部分,求合併成給定字串的最少次數。模擬合併的過程就可以了,唯一需要注意的就是如果不能合成指定字串會形成乙個迴圈。include include includeusing namespace std const int ...

poj解題報告 1328

不得不說,這題是讓我飽受折磨,畢竟第一次做貪心演算法,而且wa了好多次,幸好有學長的幫助,最終找到了問題所在,是在快排上是問題,double高位不可向int低位轉換,由於一開始強制轉換導致雖然樣例和其他的測試資料過了,但還是wa,現在改完了就對了,附上ac ps 這題通過率是22 真心不簡單 如下 ...

poj解題報告 2586

這題我是用的貪心演算法,其實不用也可以,列舉也能解決,因為情況不多。因為是每連續5個月必有虧損,而一年只有1 5,2 6,3 7,4 8 8 12共8種情況。現在設盈餘為s,虧損為d,可列出以下幾種情況。ssssdssssdss 4ssssddsssddss 3s 2d ssdddssdddss 2...