首页 > 其他分享 >PTA 最接近的价格

PTA 最接近的价格

时间:2024-09-11 20:21:25浏览次数:9  
标签:输出 真实 int PTA 差值 l1 价格 接近

A、B、C三位选手竞猜商品价格,谁的价格最接近真实价格则谁胜。为简单起见,这里假设价格都是整数

输入格式:

按A、B、C的顺序在一行中依次输入3位选手所猜的价格以及真实价格。

输出格式:

在一行中输出胜者所猜的价格及其与真实价格的差距。若有两人以上相同时,则本轮作废,输出“no winner”。

思路分享:

站内查的时候,要么只要简介没有内容,要么就是vip,故写此码分享。

叠甲:萌新,语句基本学会一点做一点相关题目,史山请见谅,因为站内大佬发的有点看不懂,请轻喷。

本题最恶心的我认为就是条件不给全,我也是从提交报错界面一点点改的。大体就是差值为负必须输出负数不能正数,但比较时-1和1是算相同差值的。

具体代码用途已注释,如有其他见解欢迎评论区留言。

#include<stdio.h>
int main()
{
	int a,b,c,d,e,f,l,m,n,l1,m1,n1;//数值定义// 
	scanf("%d %d %d %d",&a,&b,&c,&d);
	l1=a-d;//计算差值// 
	l=l1;
	//赋值,题意要求输出也要负值,但-1和1本质上与0的距离相同,因此需要转化为正值来比较// 
	if (l<0){//将负值转化为正// 
		l=-l;
	}else{
		l=l;
	}
	m1=b-d;//同理,寻找载体来记录原本的值// 
	m=m1;
	if (m<0){//将负值转化为正// 
		m=-m;
	}else{
		m=m;
	}
	n1=c-d;//同理,寻找载体来记录原本的值//
	n=n1;
	if (n<0){//将负值转化为正// 
		n=-n;
	}else{
		n=n;
	}
	if ((m==n)||(n==l)||(m==l)||((m==l)&&(l==n))){
//此处有坑,所有判断必须用差值来判断 ,而不能用输入值来判断// 
		printf("no winner");
	}else if(m<n&&m<l){
		printf("%d %d",b,m1);
	}else if (n<m&&n<l){
		printf("%d %d",c,n1);
	}else if (l<n&&l<m){
		printf("%d %d",a,l1);
    }else{
    	printf("%d %d");//这个else不加也可以// 
	}
    return 0;
}

标签:输出,真实,int,PTA,差值,l1,价格,接近
From: https://blog.csdn.net/skadi2024/article/details/142148846

相关文章

  • 小程序开发费用揭秘:影响微信小程序价格的因素有哪些?
    微信小程序的开发费用因具体需求和开发方式而异。以下是一些影响微信小程序开发费用的因素:功能和复杂度:微信小程序的功能和复杂度直接影响开发费用。简单的小程序可能只需要几千元,而复杂的小程序可能需要数万元或更高。设计和用户体验:微信小程序的设计和用户体验也会影响开......
  • 658. 找到 K 个最接近的元素
    题目链接658.找到K个最接近的元素思路二分+双指针题解链接官方题解关键点二分:查找到第一个>=val的位置;双指针:利用“有序”性质,双指针迭代跟踪left&right的位置时间复杂度\(O(\logn+k)\)空间复杂度\(O(1)\)代码实现:classSolution:de......
  • 7-16 PTA 含8的数字的个数分数 4
    现代人对数字越来越讲究,都喜欢含有8的数字。现要你编程计算a至b之间的含有数字8的数的个数(比如181,88,8,28这些数都含有数字8,而21,45,49等没有含有数字8)。输入格式:在一行中输入两个正整数a和b,用一个空格隔开。0<a<=b<100000。输出格式:输出a和b之间含有8的数的个数。包括a......
  • 如何使cin读取速度提高到接近scanf?
    cin和cout的速度通常比scanf和printf慢很多,但是只要稍微处理以下,就可以提升到接近scanf的速度。方法:(可以叠加使用)1.使用ios_base::sync_with_stdio(false);命令ios_base::sync_with_stdio(false);的作用:C++标准库默认会同步C++的标准I/O和C的标准I/O。关闭同步之后‘cin’和‘c......
  • iptables 命令使用帮助总结
    1.iptables命令帮助参数root@controller1:~#iptables--helpiptablesv1.6.1Usage:iptables-[ACD]chainrule-specification[options]iptables-Ichain[rulenum]rule-specification[options]iptables-Rchainrulenumrule-specification[options]......
  • iptables 工作过程整理
    1.概念和工作原理iptables是Linux系统中用来配置防火墙的命令。iptables是工作在TCP/IP的二、三、四层,当主机收到一个数据包后,数据包先在内核空间处理,若发现目标地址是自身,则传到用户空间中交给对应的应用程序处理,若发现目标不是自身,则会将包丢弃或进行转发。1.1四表: filt......
  • PTA 6.1单链表的逆转
     这道题也是体验到了面向答案编程的过程,根据测试时系统反馈的错误点,不断更进完善,缝缝补补最后得到通过审核的代码本题要求实现一个函数,将给定的单链表逆转。正确答案:ListReverse(ListL){PtrToNodeptr=L;intlen=0;PtrToNodetemp=NULL;whil......
  • PTA 7-12 龟兔赛跑
    龟兔赛跑(20分)乌龟与兔子进行赛跑,跑场是一个矩型跑道,跑道边可以随地进行休息。乌龟每分钟可以前进3米,兔子每分钟前进9米;兔子嫌乌龟跑得慢,觉得肯定能跑赢乌龟,于是,每跑10分钟回头看一下乌龟,若发现自己超过乌龟,就在路边休息,每次休息30分钟,否则继续跑10分钟;而乌龟非常努力,一直......
  • PTA 7-3-1 换硬币(C语言)
    将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?输入格式:输入在一行中给出待换的零钱数额x∈(8,100)。输出格式:要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量,fen2:2分硬币数量,......
  • ipvs为什么比iptables效率高
    IPVS(IPVirtualServer)相较于iptables在处理网络流量时效率更高,主要原因有以下几点:1.内核空间与用户空间IPVS:完全在内核空间中运行,直接处理网络数据包的转发,这样可以减少上下文切换和系统调用的开销。iptables:虽然也能在内核空间工作,但其某些操作涉及到用户空间,例如在管理规......