zoukankan      html  css  js  c++  java
  • CF1605A A.M. Deviation

    【题目】

    https://www.luogu.com.cn/problem/CF1605A

    【题目大意】

    给定三个数,并可以进行以下操作若干次,使得三个数中,使得

    |a1+a3-2a2|

    的值最小。

    操作: 取三个数中的两个数,其中一个+1,另一个-1。

    【分析】

    首先,由题意得,对于每次操作,2*a2的值要增加或减小2,另两个数中的一个要增加或减小1,即每次操作过后 |a1+a3-2a2| 的值会增大3或减小3。

    易知:

    当 |a1+a3-2a2|%3==0时,|a1+a3-2a2| 通过操作而得到的最小值必定为0;

    当 |a1+a3-2a2|%3==1时,无法通过再一次操作使得该值更小;

    当 |a1+a3-2a2|%3==2时,可通过一次操作分配给a1和a2各1,则操作后该值变为1。

    【代码】

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int t,a,b,c;
     4 int main(){
     5     scanf("%d",&t);
     6     while(t--){
     7         scanf("%d %d %d",&a,&b,&c);
     8         printf("%d
    ",abs(a+c-2*b)%3?1:0);
     9     }
    10     return 0;
    11 }
     
  • 相关阅读:
    百度翻译
    MailKit帮助类
    Ext.net 3.1学习
    求助 页面布局哪里错了
    jQuery 实现图片动画代码
    CSS图片水平垂直居中
    纯CSS选项卡
    百度纯CSS生成菜单
    KVM虚拟机配置
    快速部署Apache服务静态网站
  • 原文地址:https://www.cnblogs.com/TheZealous/p/15552928.html
Copyright © 2011-2022 走看看