这是一道很好的题目,我不会做,所以答案是从网上弄的。
把人家的代码又重新写了一遍,发现他的也是错的——可能跟编译器有关,但是为什么提交的时候可以通过呢???神奇
就因为dp[i][j]这个错了
通过的代码
#include#include using namespace std;const int mm=1<<13;long long dp[14][mm];int w,h;bool line_one(int x){ for(int i=0;i 0) { if(i==w-1||(x&(1<<(i+1)))==0) return 0; i+=2; }else i++; return 1;}bool trans(int a,int b){ for(int i=0;i 0) { if((b&(1< 0)i++; else return 0; } return 1;}int main(){ while(cin>>w>>h) { if(w==0&&h==0)break; if(w>h){ int zz=w;w=h;h=zz;} int z=1<