CodeForces Feb/05/2023 DIV2 A1

简介: CodeForces Feb/05/2023 DIV2 A1

 Problem - A1 - Codeforces

一道细节满满的题

4.2.png

#include<iostream>
using namespace std;
int main()
{
  int tt;
  cin >> tt;
  while (tt--)
  {
    int n;
    cin >> n;
    n--;
    int idx = 2;//B的初始为2
    int a[2]{1,0};
    int flag = 1;
    while (n)
    {
      if (idx <= n)
        n -= idx, a[flag] += idx++;//n-=idx 这个操作 妙
      else
      {
        a[flag] += n,n = 0 ;
        break;
      }
      if (idx <= n)
        n -= idx, a[flag] += idx++;//连续相加2次
      else
      {
        a[flag] += n,n = 0;
        break;
      }
      flag == 1?flag=0:flag=1;//比如B加完,换成A加
    }
    cout << a[0] <<" " << a[1] << endl;//注意输出顺序
  }
}

这道题还是思路有问题

上面的代码是按下标来操作的,连续加两次

Code over!

相关文章
|
人工智能
Codeforces Round #786 (Div. 3)(A-D)
Codeforces Round #786 (Div. 3)(A-D)
80 0
【CodeForces】Codeforces Round 857 (Div. 2) B
【CodeForces】Codeforces Round 857 (Div. 2) B
144 0
|
机器学习/深度学习 算法 C++