/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 320.0 KiB
#2 Accepted 21ms 532.0 KiB
#3 Accepted 29ms 600.0 KiB
#4 Accepted 30ms 676.0 KiB

Code

#include <bits/stdc++.h>
using namespace std;

#ifdef LOCAL
#include "debug.h"
#else
#define dbg(...)
#endif

template<typename T, typename U> 
T lstTrue(T lo, T hi, U f) {
  --lo;
  assert(lo <= hi);
  while (lo < hi) {
    T mid = lo + (hi - lo + 1) / 2;
    f(mid) ? lo = mid : hi = mid - 1;
  }
  return lo;
};

int64_t sum(int64_t x) {
  return (x * (x + 1) / 2) - 1;
}

int32_t main() {
  cin.tie(0)->sync_with_stdio(0);
  
  int Q; cin >> Q;
  while (Q--)[&] {
    int64_t k; cin >> k;
    
    int64_t x = lstTrue(0, (int)2E8, [&](int64_t mid){
      return sum(mid) <= k;
    });

    // dbg(x);
    cout << (sum(x) == k ? 'b' : 'a') << "\n";
  }();
}

Information

Submit By
Type
Submission
Problem
P1223 C. Infinity Sequence
Contest
Happy New Year 2026
Language
C++17 (G++ 13.2.0)
Submit At
2026-01-06 15:08:33
Judged At
2026-01-06 15:08:33
Judged By
Score
100
Total Time
30ms
Peak Memory
676.0 KiB