Fortune Telling
2023-12-17 21:37:52
Fortune Telling
题意
输出一个数字,代表花束中最大的花瓣数量,这就会导致“爱”。
思路
- 理解题目,当花瓣的数量为奇数时才会有“爱”
- 用if来判断p的情况
- 在for循环输出ans
坑点
要注意当p为0的情况
实现步骤
- 定义和输入所需值
- 当p值为偶数时就不能得到爱,当为奇数时就要统计花瓣数
- 在for循环中找到第一个为奇数的数,将p的值赋予它,即a[i]=0
4.最后输出结果即可
代码
#include<iostream>
#include<algorithm>
using namespace std;
int n,a[101],p=0,ans=0;
//n甘菊的数量,a[105]存每朵花花瓣数
//p是花瓣为奇数的花的个数
int main(){
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
if(a[i]%2!=0) p++;
//要统计有几朵是奇数个花瓣
}
if(p==0) cout<<0;
//如果奇数个数为0显然不可能数到爱
if(p%2!=0)
{
for(int i=1;i<=n;i++)
{
ans+=a[i];
}//统计花瓣总数
cout<<ans;
}
else{
sort(a+1,a+n+1);
//使数组中的数字呈递增顺序排序
for(int i=1;i<=n;i++)
{
if(a[i]%2!=0)
{
a[i]=0;
break;
}
//找到第一个奇数值,并将其赋值给p
}
for(int i=1;i<=n;i++)
{
ans+=a[i];//统计最大花瓣数
cout<<ans;
}
}
return 0;
}
总结
模拟
文章来源:https://blog.csdn.net/balbalbalabl/article/details/135049648
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!