zoukankan      html  css  js  c++  java
  • A

    题意:求一个机器人从点(0,0)走到点(x,y)需要的命令数。(同一个命令不能连续用两次)

    可以一直向下走,向右走。

    如果x=y,那画一张图就可知道,(0,0)到(1,1)是2步,到(2,2)是4步,到(3,3)是6步,到(x,x)是2 * x步;
    如果x<y,那就走到(x,x)点,共2 * x步,再直走(y-x)步,到(x,y)点,由于同一个命令不能连续使用2次,所以直走一次需要原地踏步一次,
    步数就是(y-x)* 2,总共是多少步呢?2 * x+(y-x) * 2嘛?别忘了直走到终点后是不需要再原地等待的啦,我们多算了一步,减掉减掉!!
    所以是2 * x+(y-x) * 2-1====>>>>step=2 * y-1;
    如果x>y呢?同理走到(y,y)点,再直走(x-y)步,巴拉巴拉...我省略啦~~step=2 * x-1;

    我要上代码!0.0

    #include <stdio.h>
    int main()
    {
    	int i,j,n,t;
    	scanf("%d",&t);
    	while(t--)
    	{
    		int x,y,sum;
    		scanf("%d %d",&x,&y);
    		if (x>y)
    		sum=2*x-1;
    		else if (x<y)
    		sum=2*y-1;
    		else
    		sum=2*x;
    		printf("%d
    ",sum);
    	}
    	return 0;
    }
    
    
  • 相关阅读:
    GO 爬虫图片相关
    GO 爬虫链接
    Redis使用
    HTTP请求
    lris框架基础案例
    UDP通信功能
    C++随机
    matplotlib显示指数部分的负号
    使用opencv-python读取中文路径图片
    pytorch模型可视化,torchviz,tensorboardX,文本方式
  • 原文地址:https://www.cnblogs.com/shidianshixuan/p/14021147.html
Copyright © 2011-2022 走看看