有域名没有服务器怎么做网站,京东网站建设目的,wordpress 主题 不显示图片,开发一个icp网站需要多少钱如图题意看出x1有且仅有两种可能#xff0c;1或者0#xff0c;且知道了所有a的值#xff0c;且因为要求所得答案字典序最小#xff0c;所以先假设x10。
又因a2x1x2所以可以求出x2的值#xff0c;又如a2x1x2x3,所以可以求出x3的值依次求出所有x的值#xff0c;但每求出一… 如图题意看出x1有且仅有两种可能1或者0且知道了所有a的值且因为要求所得答案字典序最小所以先假设x10。
又因a2x1x2所以可以求出x2的值又如a2x1x2x3,所以可以求出x3的值依次求出所有x的值但每求出一个值需要判断是否1||0如果不等于1或0则说明答案错误x10的情况不对。
则应该使得x11且因为一定存在一组解则不需要再次判断x是否正确。如果x10能求出一组正确解则不需要再求x11的情况了因为就算存在正解字典序也小于第一种情况。最后按照格式输出
#include bits/stdc.h
using namespace std;
vectorinta(2e55);//所有a的值
vectorintnum(2e55,0);//所有x的待存数组
int main()
{// 请在此输入您的代码int n,ai;cinn;for(int i1;in;i)cina[i];bool flagfalse;//用来记录x10的情况是否能够有正解num[1]0;//使得x10for(int i2;in;i){num[i]a[i-1]-num[i-1]-num[i-2];//x的计算公式if(num[i]!1num[i]!0)//判断解是否正确{flagtrue;//不正确的话则记录下来break;}}if(flag)//x10不正确则进行x11{num[1]1;for(int i2;in;i)num[i]a[i-1]-num[i-1]-num[i-2];}for(int i1;in;i)coutnum[i] ;return 0;
}