結果
| 問題 | 
                            No.1926 Sequence of Remainders
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2022-05-06 22:00:38 | 
| 言語 | C++14  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 148 ms / 2,000 ms | 
| コード長 | 1,459 bytes | 
| コンパイル時間 | 1,423 ms | 
| コンパイル使用メモリ | 167,948 KB | 
| 実行使用メモリ | 5,376 KB | 
| 最終ジャッジ日時 | 2024-07-05 23:14:32 | 
| 合計ジャッジ時間 | 8,971 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 | 
| other | AC * 35 | 
ソースコード
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using VI = vector<int>;
using VVI = vector<vector<int>>;
using VVVI = vector<vector<vector<int>>>;
using VL = vector<ll>;
using VVL = vector<vector<ll>>;
using VVVL = vector<vector<vector<ll>>>;
using VD = vector<double>;
using VVD = vector<vector<double>>;
using VVVD = vector<vector<vector<double>>>;
using VB = vector<bool>;
using VVB = vector<vector<bool>>;
using P = pair<int, int>;
using VP = vector<P>;
#define REP(i, n) for (int i = 0; i < (int)(n); i++)
#define FOR(i, a, b) for (ll i = a; i < (ll)(b); i++)
#define ALL(a) (a).begin(),(a).end()
constexpr int INF = 1001001001;
constexpr ll LINF = 1001001001001001001ll;
constexpr int DX[] = {1, 0, -1, 0};
constexpr int DY[] = {0, 1, 0, -1};
template< typename T1, typename T2>
inline bool chmax(T1 &a, T2 b) {return a < b && (a = b, true); }
template< typename T1, typename T2>
inline bool chmin(T1 &a, T2 b) {return a > b && (a = b, true); }
const ll MOD = 1000000007;
int main() {
    ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int T;
    cin >> T;
    VI N(T), M(T), K(T);
    REP(i, T) cin >> N[i] >> M[i] >> K[i];
    REP(i, T) {
        int ans = K[i] % M[i];
        REP(j, N[i]) {
            ans = ans % (M[i] - j - 1);
            j = M[i] - ans - 2;
            if (ans < M[i] - N[i]) break;
            //cout << "j=" << j << " ans=" << ans << endl;
        }
        cout << ans << endl;
    }
}