zoukankan      html  css  js  c++  java
  • Codeforce 1311A Add Odd or Subtract Even

    Add Odd or Subtract Even
    time limit per test2 seconds
    memory limit per test256 megabytes
    inputstandard input
    outputstandard output
    You are given two positive integers a and b.

    In one move, you can change a in the following way:

    Choose any positive odd integer x (x>0) and replace a with a+x;
    choose any positive even integer y (y>0) and replace a with a−y.
    You can perform as many such operations as you want. You can choose the same numbers x and y in different moves.

    Your task is to find the minimum number of moves required to obtain b from a. It is guaranteed that you can always obtain b from a.

    You have to answer t independent test cases.

    Input
    The first line of the input contains one integer t (1≤t≤104) — the number of test cases.

    Then t test cases follow. Each test case is given as two space-separated integers a and b (1≤a,b≤109).

    Output
    For each test case, print the answer — the minimum number of moves required to obtain b from a if you can perform any number of moves described in the problem statement. It is guaranteed that you can always obtain b from a.

    Example
    input
    5
    2 3
    10 10
    2 4
    7 4
    9 3
    output
    1
    0
    2
    2
    1
    Note
    In the first test case, you can just add 1.

    In the second test case, you don’t need to do anything.

    In the third test case, you can add 1 two times.

    In the fourth test case, you can subtract 4 and add 1.

    In the fifth test case, you can just subtract 6.
    分差的奇偶性,和大小

    
    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int t;
        cin >> t;
        while (t--)
        {
        
            int a,b,c;
            cin>>a>>b;
            if(a==b) cout<<0<<endl;
            else if(a>b)
            {
                if((a-b)%2==0)cout<<1<<endl;
                else cout<<2<<endl;
            }
            else {
     
                if((b-a)%2==0)cout<<2<<endl;
                else cout<<1<<endl;
            }
        }
    }
    
  • 相关阅读:
    Oracle 获取创建控制文件的脚本
    ESXi下误删磁盘分区
    Oracle 3DES加密示例
    Oracle job 执行多个存储过程
    解开紧箍咒
    国际关系之美国南海战略意图(转)
    GHOST系统锁定主页常用软件及解决方案
    cut命令详解
    grep命令详解
    awk命令详解
  • 原文地址:https://www.cnblogs.com/lunatic-talent/p/12798414.html
Copyright © 2011-2022 走看看