本篇文章建立在读者有Python或c++语法基础的情况下,如有不适,请立即停止食用。
上篇文章:https://mp.csdn.net/mp_blog/creation/editor/126489937
目录
模拟就是对生活中或者题目中的要求以及状况进行模拟,比如大家津津乐道的易经算卦,就是模拟的一种体现,其中的先天八卦分别代表着生活中的四象,正所谓“四象生八卦”,就是这个意思,通过这八卦模拟天的运行,延伸出其他的六十四卦,再通过对这些卦的解释,从而进行占卜。简单点说,就是模拟自然万物的运行,来未卜先知。
当我们使用某德地图导航时,他会告诉我们大概要多久才能到达目的地,这就是模拟在生活中的体现,他通过我们步行,乘车的速度以及红绿灯的分布,和红绿灯的换灯时间等等一系列因素,通过内置算法来决定我们的到达时间。
模拟算法基本没有模板,就是题目让你怎么做,你就怎么做,所以模拟算是比较简单的,但是,他也算比较难的,因为有些题就不是人做的,他会给你一大堆条件,让你模拟,是程序变得异常的繁琐,但模拟题却是常考题型,这就有点不友好了,我们先结合题目来看看吧。
题目描述
班主任给小玉一个任务,到文具店里买尽量多的签字笔。已知一只签字笔的价格是 11 元 99 角,而班主任给小玉的钱是 a 元 b 角,小玉想知道,她最多能买多少只签字笔呢。
输入格式
输入只有一行两个整数,分别表示 a 和 b。
输出格式
输出一行一个整数,表示小玉最多能买多少只签字笔。
输入输出样例
输入
10 3
输出
5
看到这里,你心里有答案了吗?是不是非常简单。那就请你写出自己的代码。
python代码
a,b=input().split(" ")#输入
a=int(a)#类型转换
b=int(b)
a=a*10#元转角
c=a+b#总角数
print(c//19)#整除
c++代码
#include<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
int c;
c=a*10+b;
cout<<c/19;
return 0;
}
当然,这只是比较简单的模拟题,本人在后面的几篇文章里也会写一些难的模拟题的题解。
练习:https://www.luogu.com.cn/training/9349#problems
谢谢观看