Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <algorithm>#include <string.h>#include <stdio.h>#include <cstdio>using namespace std;const int MAX = 100000+10;int a[2][MAX],b[MAX];int res[2][MAX];bool trycase(int num, int idx, int len){a[idx][1] = num;if (a[idx][1]<0 || a[idx][1]>1)return false;a[idx][2] = b[1]-a[idx][1];if (a[idx][2]<0 || a[idx][2]>1)return false;for (int i = 3; i <= len; ++i){a[idx][i] = b[i-1]-a[idx][i-1]-a[idx][i-2];if (a[idx][i]<0 || a[idx][i]>1)return false;}if (a[idx][len]+a[idx][len-1] != b[len])return false;elsereturn true;