模拟(入门)
2019-05-04 09:39:33来源:博客园 阅读 ()
基础不多但常用,也由于常用所以不多扯。接下来就是一种好玩的..。
模拟
模拟就像是我们常做的情景应用题,题目给你一个情景但不给具体数据,而让你用代码来实现给定范围内的的变量计算。大体就是这样,一般学过的人都清楚,这里就不多加赘述。下面上题(由于是模拟入门so...例题均为入门题):
eg1:p1046 陶陶摘苹果
此题给定数据个数及范围,所以在定义上是十分简单的。用for进行数据记录,if进行条件判定若苹果高度小于(陶陶高度+凳子高度)那么结果加一。
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int a[11],x,s,j; 5 6 int main() 7 { 8 for(int i=1;i<=10;i++) 9 cin>>a[i]; 10 cin>>j; 11 for(int i=1;i<=10;i++) 12 if(a[i]<=j+30) 13 s++; 14 cout<<s; 15 return 0; 16 }
eg2:P1059 明明的随机数
其实此题放在这不太恰当,因为此题表面上是情景模拟,但实际上是排序的底子。
已知输入的数在1~1000范围内,那么我们可以定义一个数组(初始值为0),用输入的数为下标,数值加一(“去重”的关键);由于需要从小到大排序,所以用for把1~1000都过一遍(枚举),判断每个数组的数值是否为0,不为0,那么输出下标,为0就继续循环,由于从小到大循环输出所以也完成了排序。其实这也是桶排序的思想。
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int a[1001],n,k,x[101]; 5 6 int main() 7 { 8 int j=0; 9 cin>>n; 10 for(int i=1;i<=n;i++) 11 { 12 cin>>k; 13 a[k]++; 14 } 15 for(int i=1;i<=1000;i++) 16 if(a[i]>0) 17 { 18 j++; 19 x[j]=i; 20 n--; 21 } 22 cout<<j<<endl; 23 for(int l=1;l<=j;l++) 24 cout<<x[l]<<" "; 25 return 0;
26 }
eg3:p1634 禽兽的传染病
题目很短
看到这题是不是很easy?然后...
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int x,n,s; 5 6 int main() 7 { 8 cin>>x>>n; 9 s=1; 10 for(int i=1;i<=n;i++) 11 s=s+s*x; 12 cout<<s; 13 return 0; 14 }
如果你是这样做的那么恭喜你在洛谷上的得分为30分(不要问我为什么~~~因为开始我这就是这样!!)(莫名伤心)
开始天真的我以为没毛病,又交了好几遍~~~然后...wa声一片;后来才发现原来——
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 long long x,n,s; 5 6 int main() 7 { 8 cin>>x>>n; 9 s=1; 10 for(int i=1;i<=n;i++) 11 s=s+s*x; 12 cout<<s; 13 return 0; 14 }
是我定义的小了,它被爆了。(唉!!!这个答案让我哭笑不得)
eg4:p1567统计天数
看到它我的想法还是很多的,不过CE了,有修改了一番
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 long long n,a[10001],b[1000001],s; 5 6 int main() 7 { 8 cin>>n; 9 int k=1; 10 for(int i=1;i<=n;i++) 11 { 12 cin>>b[i]; 13 if(b[i]>b[i-1]) 14 k++,a[i]=k; 15 else k=1,a[i]=k; 16 } 17 for(int i=1;i<=n;i++) 18 s=max(a[i],s); 19 cout<<s; 20 return 0; 21 }
注:题目出自洛谷https://www.luogu.org/
原文链接:https://www.cnblogs.com/berserker-slst/p/cjjyuyan2.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:常见排序算法(一)
- 如何0基础学习C/C++? 2020-06-06
- 复习C++语法--基础篇 2020-05-27
- C++基础 学习笔记六:复合类型之数组 2020-04-25
- C++基础 学习笔记五:重载之运算符重载 2020-04-23
- C++基础 学习笔记四:重载之函数重载 2020-04-22
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash