Codeforces Round #416 (Div. 2) A. Vladik and Courtesy【思维/模拟】

A. Vladik and Courtesy
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

At regular competition Vladik and Valera won a and b candies respectively. Vladik offered 1 his candy to Valera. After that Valera gave Vladik 2 his candies, so that no one thought that he was less generous. Vladik for same reason gave 3 candies to Valera in next turn.

More formally, the guys take turns giving each other one candy more than they received in the previous turn.

This continued until the moment when one of them couldn’t give the right amount of candy. Candies, which guys got from each other, they don’t consider as their own. You need to know, who is the first who can’t give the right amount of candy.

Input

Single line of input data contains two space-separated integers ab (1 ≤ a, b ≤ 109) — number of Vladik and Valera candies respectively.

Output

Pring a single line "Vladik’’ in case, if Vladik first who can’t give right amount of candy, or "Valera’’ otherwise.

Examples
input
1 1
output
Valera
input
7 6
output
Vladik
Note

Illustration for first test case:

Illustration for second test case:

 【题意】:看hint就懂了。

【分析】:根据天数的奇偶区分谁做东(减改天数)

【代码】:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define N 65535+10
int main()
{
    ll a,b;
    while(cin>>a>>b)
    {
       for(int i=1;i<=10000007;i++)
       {
           if(i%2==1)
           {
               a -= i;
               if(a<0) return 0*puts("Vladik");
           }
           else
           {
               b -= i;
               if(b<0) return 0*puts("Valera");
           }
       }
    }
}

  

原文地址:https://www.cnblogs.com/Roni-i/p/8011968.html