PAT乙级1037 在霍格沃茨找零钱 (20 分)

Posted 辉小歌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT乙级1037 在霍格沃茨找零钱 (20 分)相关的知识,希望对你有一定的参考价值。

在这里插入图片描述
题目地址

#include<cstdio>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int main(void)
{
	string a,b; cin>>a>>b;
	int x1,x2,x3;
	int y1,y2,y3;
	
	x1=stoi(a.substr(0,a.find('.')+1));
	a=a.substr(a.find('.')+1);
	x2=stoi(a.substr(0,a.find('.')+1));
	a=a.substr(a.find('.')+1);
	x3=stoi(a);
	
	y1=stoi(b.substr(0,b.find('.')+1));
	b=b.substr(b.find('.')+1);
	y2=stoi(b.substr(0,b.find('.')+1));
	b=b.substr(b.find('.')+1);
	y3=stoi(b);
	int sum1,sum2;
	sum1=x1*17*29+x2*29+x3;
	sum2=y1*17*29+y2*29+y3;
	if(sum2>=sum1)
	{
		int t=17*29;
		int sum=sum2-sum1;
		printf("%d.%d.%d\\n",sum/t,sum%t/29,sum%29);
	}
	else
	{
		int t=17*29;
		int sum=sum1-sum2;
		printf("-%d.%d.%d\\n",sum/t,sum%t/29,sum%29);
	}
	return 0;
}
#include<cstdio>
#include<iostream>
using namespace std;
int s1,s2,s3,ss1,ss2,ss3;
int main(void)
{
	scanf("%d.%d.%d %d.%d.%d",&s1,&s2,&s3,&ss1,&ss2,&ss3);
	int sum1=s1*29*17+s2*29+s3;
	int sum2=ss1*29*17+ss2*29+ss3;
	int temp=sum1-sum2;
	if(temp>0)  printf("-%d.%d.%d\\n",temp/29/17,(temp%(29*17))/29,temp%29);
	else temp=-temp,printf("%d.%d.%d\\n",temp/29/17,(temp%(29*17))/29,temp%29);
	return 0;
} 

以上是关于PAT乙级1037 在霍格沃茨找零钱 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

PAT 乙级 1037 在霍格沃茨找零钱

PAT Basic 1037 在霍格沃茨找零钱 (20 分)

PAT 1037. 在霍格沃茨找零钱

PAT B1037 在霍格沃茨找零钱

PATB1037 在霍格沃茨找零钱(20 分)

1037 在霍格沃茨找零钱(20 分)