首页 > 其他分享 >24.12.22学习总结

24.12.22学习总结

时间:2024-12-23 22:59:53浏览次数:5  
标签:总结 y2 22 int 24.12 else x2 y1 x1

题目描述

给出起点和终点的坐标,及接下来 T 个时刻的风向(东南西北),每个时刻可以选择顺风偏移 1个单位或者停在原地。求到达终点的最少移动步数

坐标采用平面直角坐标系,x 轴正向为东,y 轴正向为北。

如果无法偏移至终点,输出 −1。

输入格式

第一行两个正整数 x1​,y1​,表示小明所在位置。

第二行两个正整数 x2​,y2​,表示小明想去的位置。

第三行一个整数 T,表示 T 个时刻。

第四至第 N+3 行,每行一个字符,表示风向,即东(E)南(S)西(W)北(N)的英文单词的首字母。

输出格式

一行一个整数,表示最少移动步数。

输入输出样例

输入 

1 1
2 2
5
E
N
W
W
N

输出 

2

对了60%的代码:

#include<stdio.h>
int fab(int a)
{
	if(a>=0)return a;
	else return -a;
}
int main()
{
	int x1,y1,x2,y2;
	scanf("%d %d %d %d",&x1,&y1,&x2,&y2);
	int n,count=0;
	scanf("%d",&n);
	for(int i=n;i>0;i--)
	{
		if(x2-x1==0&&y2-y1==0){
			printf("%d",count);
			return 0;
		}
		char a;
		int x0=x1,y0=y1;
		while(1){
			a=getchar();
			if(a!='\n')break;
		}
		if(a=='E')x0++;
		else if(a=='W')x0--;
		else if(a=='S')y0--;
		else if(a=='N')y0++;
		if(fab(x2-x0)<fab(x2-x1)){
			x1=x0,count++;
		}
		if(fab(y2-y0)<fab(y2-y1)){
			y1=y0,count++;
		}
	}
	if(x1!=x2||y1!=y2)printf("-1");
	else printf("%d",count);
	return 0;
}

标签:总结,y2,22,int,24.12,else,x2,y1,x1
From: https://blog.csdn.net/The_cute_cat/article/details/144653695

相关文章

  • 包机制、文档注释javaDoc、用户交互Scanner20241223
    包机制20241223点击src打开设置点击外观取消勾选压缩空的中间软件包、平展软件包创建包点击src点击新建,点击软件包输入新建包名com.pangHuHuStudyJava用别的包里的方法,要先导入包,如果没有导入,可以按住出错的地方按alt+enter.importjava.util.Date;在operator.......
  • 24.12.23
    菜死了啊啊啊AluoguP9266耶?这不是我们决策单调性嘛,我能受这委屈,我刚学的擒拿术。然后靠着渺远的记忆加了wqs二分。然后冲了一整场爆蛋了。......
  • 在VS2022中,“根据模型生成数据库”时报错:已添加了具有相同键的项(或:An item with the s
      解决方法:关闭解决方案,打开解决方案所在文件夹,打开以下文件夹:.vs\ConsoleApp7\FileContentIndex,然后删除里面的所有文件,再重新在VS中打开解决方案重新生成即可 ......
  • 12.23日总结之C++学习笔记-1
    *iter++是一个符合表达式,可分解为*iter和++iter,自增++的优先级要比解引用*的优先级要高,但是后缀自增表示先返回原本的值,再进行自增。也就是说上面的语句和*-i(ter++)是完全一样的。Ai解释“这是一个后缀递增操作符。它会返回当前的iter值,然后将iter增加一个位置。例如,如果......
  • if用法总结
    \(if\)相当于中文中的如果,表示如果满足某个条件,就执行某个操作。结构1if(条件)//注意if后面要加(),如果有多个任务就要用大括号包裹{条件为真执行的语句。语句1;语句2; ...}举个例子,如果明天不下雨,我们就去郊游烧烤,可以表示为if(明天不下雨){郊游;......
  • [20241222]关于日期输出格式问题.txt
    [20241222]关于日期输出格式问题.txt--//https://connor-mcdonald.com/网站写了一系列相关blog,命名为KrisKringle系列。--//其中链接提到的例子https://connor-mcdonald.com/2024/12/21/kris-kringle-the-database-what-day-is-it/--//重复测试:1.环境:SCOTT@book01p>@ver2=====......
  • 2024.12.23~2024.12.29
    2024.12.23上午学习了期望,一个期望线性限制直接走遍天下!上午成功把例题写完了慵懒的下午有点摆,只写了2题吃完饭乒乓球打了一小会,打算以后乒乓球就晚上打就行了,中午卷题还是不够专注,明天设计一个备忘录,把学习时想干的事写在上面,学习完再干晚上期望后面写不下去了,杀了个回马枪......
  • 分治总结
    有各种分治:CDQ分治,树上分治,数据结构上分治,根号分治,etc.普通分治求逆序对用归并排序求逆序对。Sol:其实逆序对是在归并排序时顺带求的,主要是归并排序。我们要对区间\([l,r]\)从小到大排序,先对\([l,mid],[mid+1,r]\)排序(这一步体现分治思想)。现在考虑怎么把两边合并。我们定义......
  • 贪心总结
    每次都选当下的最优解,一步步得到全局的最优。可以贪心的题目的性质最优子结构性质:选择当前问题的最优决策不会影响子问题的最优决策。贪心选择性:当前决策依赖于已经做出的决策,且决策一旦做出边不能更改。证明贪心策略正确的方法反证法:如果交换某两个元素后不会得到更......
  • Ubuntu22.04 LTS 部署zabbix7.0
    Ubuntu22.04LTS部署zabbix7.0环境准备IP主机名配置10.0.0.50zabbix-012c4G10.0.0.52db2c4G1.添加zabbix仓库[root@zabbix-01:~]#wgethttps://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu22.04_......