当前位置:网站首页>Acwing/3359. 更多奇怪的照片
Acwing/3359. 更多奇怪的照片
2022-08-07 14:16:00 【AlwaysDayOne】

输入样例1:
7
1 3 5 7 9 11 13
输出样例1:
3
样例1解释
在这个样例中,以下是一种分成最大组数三组的方案。
将 1 和 3 分在第一组,5、7 和 9 分在第二组,11 和 13 分在第三组。
输入样例2:
7
11 2 17 13 1 15 3
输出样例2:
5
样例2解释
在这个样例中,以下是一种分成最大组数五组的方案。
将 2 分在第一组,11 分在第二组,13 和 1 分在第三组,15 分在第四组,17 和 3 分在第五组。
题解
见注释 贪心
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <vector>
using namespace std;
int main(){
int n;
cin>>n;
int odd = 0, even = 0; // 分别存储奇偶数
int temp;
for(int i = 0; i < n; i++){
cin>>temp;
if(temp%2) odd++;
else even++;
}
// 利用奇偶数的数量来贪心组合
int ans;
if(odd >= even){
// 奇数比偶数多或相同
// 首先一定有偶数*2组
ans = even*2;
// 剩余的奇数两个相加为偶数,一个做奇数组
int odd_size = odd - even;
ans += (odd_size / 3) * 2;
// 还有单出来的一组,2个则是偶数组
// 剩1个则只能回退将最后四个作为一组形成偶数,删除倒数第二个作为的奇数组
if(odd_size%3 == 2) ans++;
else if(odd_size%3 == 1) ans--;
} else {
// 偶数比奇数多
// 只能是多个偶数相加控制偶数组数比奇数多一组
ans = odd*2 + 1;
}
cout<<ans<<endl;
return 0;
}
边栏推荐
- 修改mysql 数据表主键
- 关于LANC控制镜头中出现的问题
- Event registration: How to efficiently respond to the current real-time scene needs?
- 雷达的分辨率
- 一种自主学习 Office Open XML 文件格式的方法介绍
- Yangzhou University responded that "Dr. Tsinghua has been employed for 5 years, and the monthly salary is only 372 yuan"
- mysql 主从复制部署
- CSO面对面|对话迷你世界,畅谈游戏行业的安全建设
- 启牛的中信证券VIP佣金账户如何?安全靠谱吗
- Network Foundation (3) 02-Basic Concept of Network - DNS server hosts file configuration & three-way handshake of website access process & BS architecture - browser access, CS architecture - installat
猜你喜欢

How simple implement drag-and-drop ordering function menu

LinkedList 底层学习

mysql连接WARN: Establishing SSL connection without server‘s identity verification is not recommended.

mysql database source command to import sql file records

美团&上交开源PromptDet:无需标注,开放世界的目标检测器

@RequestMapping注解标识的位置

域对象共享数据

tensorRT(一)| tensorRT如何进行推理加速?

Tapdata Open Source Project Basic Tutorial: Features and Practical Demonstrations

MySQL:使用自定义函数计算经纬度之间的最短距离
随机推荐
炒股用同花顺安全吗?资金会不会被转走?
修改mysql 数据表主键
HJ8 merge table records
helm安装报错Request entity too large: limit is 3145728
HJ4 字符串分隔
go优先级队列实现
嵌入式开发:嵌入式基础–了解微控制器引导过程
使用同花顺软件炒股安全吗?
How simple implement drag-and-drop ordering function menu
[Add and delete vscode code snippets]
多线程-Lambda表示
dotnet 特性 DynamicallyInvokable 是用来做什么的
redsi总结_最佳实战
Fiddler抓包原理讲解以及实例操作
dotnet 获取当前进程方法
SwiftUI任意继承层级中视图被裁剪显示不全的解决方案
CSO面对面|对话迷你世界,畅谈游戏行业的安全建设
红队web打点信息收集
top-k问题详解——通过堆解决高频面试题
启牛的中信证券VIP佣金账户如何?安全靠谱吗