PAT(BASIC)1037. 在霍格沃茨找零钱(20)

2024-04-29 12:18

本文主要是介绍PAT(BASIC)1037. 在霍格沃茨找零钱(20),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

代码确实有点冗长,请见谅。
#include<iostream>
struct money{int Galleon;int Sickle;int Kunt;
};
int main(void){using namespace std;money should_pay,pay,resault;char c;cin>>should_pay.Galleon>>c>>should_pay.Sickle>>c>>should_pay.Kunt>>pay.Galleon>>c>>pay.Sickle>>c>>pay.Kunt;if((pay.Galleon>should_pay.Galleon)||((pay.Galleon>=should_pay.Galleon)&&pay.Sickle>should_pay.Sickle)||(pay.Galleon>=should_pay.Galleon&&pay.Sickle>=should_pay.Sickle&&pay.Kunt>=should_pay.Kunt)){int jw=0;if(pay.Kunt>=should_pay.Kunt)resault.Kunt=pay.Kunt-should_pay.Kunt;else{jw=1;resault.Kunt=pay.Kunt+29-should_pay.Kunt;}pay.Sickle-=jw;jw=0;if(pay.Sickle>=should_pay.Sickle)resault.Sickle=pay.Sickle-should_pay.Sickle;else{jw=1;resault.Sickle=pay.Sickle+17-should_pay.Sickle;}pay.Galleon-=jw;resault.Galleon=pay.Galleon-should_pay.Galleon;cout<<resault.Galleon<<'.'<<resault.Sickle<<'.'<<resault.Kunt;}else{int jw=0;if(should_pay.Kunt>=pay.Kunt)resault.Kunt=should_pay.Kunt-pay.Kunt;else{jw=1;resault.Kunt=should_pay.Kunt+29-pay.Kunt;}should_pay.Sickle-=jw;jw=0;if(should_pay.Sickle>=pay.Sickle)resault.Sickle=should_pay.Sickle-pay.Sickle;else{jw=1;resault.Sickle=should_pay.Sickle+17-pay.Sickle;}should_pay.Galleon-=jw;resault.Galleon=should_pay.Galleon-pay.Galleon;cout<<'-'<<resault.Galleon<<'.'<<resault.Sickle<<'.'<<resault.Kunt;}system("pause");
}

这篇关于PAT(BASIC)1037. 在霍格沃茨找零钱(20)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/946064

相关文章

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

【JavaScript】LeetCode:16-20

文章目录 16 无重复字符的最长字串17 找到字符串中所有字母异位词18 和为K的子数组19 滑动窗口最大值20 最小覆盖字串 16 无重复字符的最长字串 滑动窗口 + 哈希表这里用哈希集合Set()实现。左指针i,右指针j,从头遍历数组,若j指针指向的元素不在set中,则加入该元素,否则更新结果res,删除集合中i指针指向的元素,进入下一轮循环。 /*** @param

nyoj 1037 Postscript of Tian Ji racing

一道卡贪心的题。 也算一道改编题。 此题的解法推荐为二分图的最大匹配。 首先将输入数据转换一下,然后将满足题意的一组牌建立条边,最终边的覆盖数即为 LN 最后可得的分数。 然后求出最大匹配即可。 代码如下: #include<stdio.h>#include<string.h>char card[30][5];char s[5];int map[30][30];

代码随想录训练营day37|52. 携带研究材料,518.零钱兑换II,377. 组合总和 Ⅳ,70. 爬楼梯

52. 携带研究材料 这是一个完全背包问题,就是每个物品可以无限放。 在一维滚动数组的时候规定了遍历顺序是要从后往前的,就是因为不能多次放物体。 所以这里能多次放物体只需要把遍历顺序改改就好了 # include<iostream># include<vector>using namespace std;int main(){int n,m;cin>>n>>m;std::vector<i

代码随想录算法训练营Day37|完全背包问题、518.零钱兑换II、377. 组合总和 Ⅳ、70. 爬楼梯(进阶版)

完全背包问题                  和01背包最大区别就是一个物品可以重复放多次,因此遍历空间时可以从前往后。 import java.util.*;public class Main{public static void main (String[] args) {Scanner sc = new Scanner(System.in);int m = sc.nextInt

【语句】如何将列表拼接成字符串并截取20个字符后面的

base_info = "".join(tree.xpath('/html/head/script[4]/text()'))[20:] 以下是对这个语句的详细讲解: tree.xpath('/html/head/script[4]/text()')部分: tree:通常是一个已经构建好的 HTML 文档树对象,它是通过相关的 HTML 解析库(比如 lxml)对 HTML 文档进行解

查看Excel 中的 Visual Basic 代码,要先设置excel选项

1. excel VB的简单介绍 百度安全验证 2.excel选项设置 excel表格中在选项->自定义功能区域,选择开发工具,visual baisc/查看代码,即可看到代码。 3.excel已经设置,可以直接查看

C++20中支持的非类型模板参数

C++20中支持将类类型作为非类型模板参数:作为模板参数传入的对象具有const T类型,其中T是对象的类型,并且具有静态存储持续时间(static storage duration)。       在C++20之前,非类型模板参数仅限于:左值引用类型、整数类型、指针类型、指向成员类型的指针、枚举类型、std::nullptr_t。在C++20中,它已扩展并支持:浮点类型、字面量类类

代码随想录:322. 零钱兑换

322. 零钱兑换 class Solution {public:int coinChange(vector<int>& coins, int amount) {vector<int> dp(10005,INT_MAX);//由于后面要取最小值,所以初始大一些dp[0]=0;//总金额为0个数一定为0for(int i=0;i<coins.size();i++){for(int j=coins