AcWing 3799. 送糖果
阿新 • • 發佈:2021-08-10
Description
Vladik 有 a 個糖果,Valera 有 b 個糖果。
兩個人回合制的互送禮物給對方。
第一輪,Vladik 送給 Valera 1 個糖果。
第二輪,Valera 送給 Vladik 2 個糖果。
第三輪,Vladik 送給 Valera 3 個糖果。
以此類推,兩人輪流給對方送糖果,且每輪送出的糖果數量都比上一輪多一個。
當某一輪,輪到某人送糖果時,如果糖果數量不夠了,則停止互送禮物。
請問,是誰的糖果率先不夠?
注意,每個人都只能送給對方自己事先準備的糖果。
自己收到的糖果不得再送還給對方。
Input
第一行包含整數 T,表示共有 T 組測試資料。
每組資料佔一行,包含兩個整數 a,b。
Output
每組資料輸出一行結果,如果 Vladik 的糖果率先不夠,則輸出 Vladik,否則輸出 Valera。
code
#include <iostream> #include <cstring> #include <algorithm> using namespace std; int main() { int T; cin >> T; while(T --) { int a, b; cin >> a >> b; int i = 0; while(a >= 0 && b >= 0) { if(++ i % 2 == 1) a -= i ; else b -= i; } if(a < 0) cout << "Vladik" << endl; else cout << "Valera" << endl; } return 0; }