727C - Guess the Array - CodeForces Solution


constructive algorithms interactive math *1400

Please click on ads to support us..

Python Code:

n = int(input())
ans = [0] * n
print("? 1 2")
a = int(input())
print("? 2 3")
b = int(input())
print("? 1 3")
c = int(input())
ans[0] = (a + b + c) // 2 - b
ans[1] = a - ans[0]
ans[2] = b - ans[1]
for i in range(3, n):
    print(f"? {i} {i + 1}")
    ans[i] = int(input()) - ans[i - 1]
print("!", *ans)


C++ Code:

#include<bits/stdc++.h>
#define ed '\n'
using namespace std;
int main()
{
long int n;
cin>>n;
long int a[n+1],i,x,sum=0,d[3];
for(i=1;i<=n;i++)
{
  if(i==1 || i==2)
  {
   cout<<"?"<<" "<<i<<" "<<(i+1)<<ed;
  }
  else
  {
  cout<<"?"<<" "<<"1"<<" "<<i<<ed;
  }
  cin>>x;
  if(i==1 || i==2 || i==3)
  {
      d[i]=x;
  }
  if(i==3)
  {
      a[i]=((d[2]+d[3])-d[1])/2;
      a[2]=(d[2]-a[i]);
      a[1]=(d[1]-a[2]);
  }
  else
  {
      a[i]=(x-a[1]);
  }
}
cout<<"!"<<" ";
for(i=1;i<=n;i++)
{
 cout<<a[i]<<" ";
}
cout<<ed;
return 0;
}


Comments

Submit
0 Comments
More Questions

1505H - L BREAK into program
171E - MYSTERIOUS LANGUAGE
630D - Hexagons
1690D - Black and White Stripe
1688D - The Enchanted Forest
1674C - Infinite Replacement
712A - Memory and Crow
1676C - Most Similar Words
1681A - Game with Cards
151C - Win or Freeze
1585A - Life of a Flower
1662A - Organizing SWERC
466C - Number of Ways
1146A - Love "A"
1618D - Array and Operations
1255A - Changing Volume
1710C - XOR Triangle
415C - Mashmokh and Numbers
8A - Train and Peter
591A - Wizards' Duel
1703G - Good Key Bad Key
1705A - Mark the Photographer
1707A - Doremy's IQ
1706B - Making Towers
1325B - CopyCopyCopyCopyCopy
1649C - Weird Sum
1324B - Yet Another Palindrome Problem
525A - Vitaliy and Pie
879A - Borya's Diagnosis
1672B - I love AAAB