数学联邦政治世界观
超小超大

数学(十)完结 (3-1)

A - Maximize the Last Element

void solve() {

int n;cin>>n;

vector<int>a(n+1);

int ans=0;

for(int i=1;i<=n;i++){

cin>>a[i];

if(((i-1)%2==0)&&((n-i)%2==0)){

ans=max(a[i],ans);

}

}

cout<<ans<<endl;

}

B - AND Reconstruction

由于a2即和a1按位与得到b1,也和a3按位与得到b2,所以a2实际上需要有b1和b2所有位数上的1,也就是等于这两个数的或,a1和an比较特殊,可以直接变成b1和bn-1,这样操作一下看是否等于b数组即可

void solve() {

int n;cin>>n;

vector<int>a(n+1),b(n+1);

for (int i = 1; i<n; i++) cin>>b[i];

b[0] = b[n] = 0;

for (int i = 1; i <= n; i++)

a[i] = b[i - 1] | b[i];

int ok=1;

for (int i = 1; i<n; i++)

if ((a[i] & a[i + 1]) != b[i]) {

ok = 0;

break;

}

if (ok) {

for (int i = 1; i <= n; i++)

cout<<a[i]<< ' ';

} else{

cout<<-1;

}

cout<<endl;

}

C - Absolute Zero

首先判断不成立的条件,奇偶性不同的两个数减去相同的x后,得到的数的绝对值奇偶性必然不同,(这个很好证明,只需要枚举一下所有可能的情况即可)所以我们是没法让既存在奇数和偶数的数组置为0

观察操作特性,每次选定一个数x,使得所有的a[i]都等于abs(a[i]-x),就相当于找到一个数x,并将所有的数的值改为与x的距离差的绝对值,可以想到用数组的最大最小的均值去不断缩小整个数组

void solve(){

int n;cin>>n;

vector<int>a(n);

for(int i=0;i<n;i++) cin>>a[i];

for(int i=1;i<n;i++){

if(a[i]%2!=a[0]%2){

cout<<-1<<endl;

return;

}

}

数学联邦政治世界观提示您:看后求收藏(同人小说网http://tongren.me),接着再看更方便。

相关小说

奥特兄弟(亲情文) 连载中
奥特兄弟(亲情文)
紫萱_94317026140035694
奥特兄弟和孩子们的快乐活动
0.1万字9个月前
神兽战队之新的敌人 连载中
神兽战队之新的敌人
洛林水间
0.7万字9个月前
猫七夜专辑 连载中
猫七夜专辑
星之灭亡
0.3万字9个月前
选妃路漫漫 连载中
选妃路漫漫
江晚暮色浓
你体验过好不容易爱上了一个人然后爱人就战死了么?秋孑凛体验了。你体验过一言不合就禁足的家长么?墨芷苒就体验了。你有体验过莫名其妙地自己最想要......
9.7万字9个月前
冥界少主,请走开! 连载中
冥界少主,请走开!
跳跳糖nice
渣男、花心、大骗子!最好有多远滚多远……  这个是羽落对某负心汉的评价。  而某负心汉则不以为然,知道自己罪孽深重,伤她伤得太深,所以誓要以......
10.5万字9个月前
忆夕凤囚 连载中
忆夕凤囚
楼病
已解锁[洛夕x夙墨]“你知道吗,你是那段日子里唯一的骄傲。”“我追随了你很久,虽然……你从不看我。”“追人真的很累,要不下辈子换你追我吧。”......
9.9万字9个月前