CF回顾《二分类》
cf Educational Codeforces Round 115 (Rated for Div. 2) C题
类型:二分查找。
中文题目:
C.删除两项内容
Monocarp有一个由n个整数组成的数组a。让我们将k表示为这些元素的数学平均值(注意,k可能不是整数)。
n个元素数组的数学平均值是元素之和除以这些元素的数量(i。 e、 和除以n)。
Monocarp希望从a中删除两个元素,以便剩余元素(n)的数学平均值−2) 元素仍然等于k。
您的任务是计算位置对[i,j](i<j)的数量,这样,如果删除这些位置上的元素,则(n)的数学平均值−2) 剩余元素等于k(即,它等于原始数组a的n个元素的数学平均值)。
简化:给一串数,去掉其中两个数,使去掉后的串的平均值等于原平均值,问有几种方案。
如:
输入:
5
1 4 7 3 5
输出:
2
代码:
#include<bits/stdc++.h>
using namespace std;
#define cout(x) printf("%d",x)
#define cin(x) scanf("%d",&x)
#define ll long long
int a[200010];
int main(){
ll sum,t,n;
cin>>t;
int ans;
while(t--){
memset(a,0,sizeof(a));
ll num=0;
ll sum=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
sum+=a[i];
}
double ans=sum*1.0/n;
ans*=2;
sort(a,a+n);
for(int i=0;i<n;i++){
num+=upper_bound(a,a+n,ans-a[i])-lower_bound(a,a+n,ans-a[i]);
if(ans-a[i]==a[i])num--;
}
cout<<num/2<<endl;
}
return 0;
}
思路:
开始想直接暴力查找,果然TLE。后来没想到怎么优化。其实想到二分但太复杂,不想写。重点没学会map和查找函数.
最重点:
函数upper_bound(a,a+n,x)-a 查找出最晚出现的X的下标
lower_bound(a,a+n,x)-a 查找出第一个出现的x的下标
都在algorithm里
CF回顾《二分类》的更多相关文章
- Python深度学习读书笔记-6.二分类问题
电影评论分类:二分类问题 加载 IMDB 数据集 from keras.datasets import imdb (train_data, train_labels), (test_data, t ...
- R数据分析:二分类因变量的混合效应,多水平logistics模型介绍
今天给大家写广义混合效应模型Generalised Linear Random Intercept Model的第一部分 ,混合效应logistics回归模型,这个和线性混合效应模型一样也有好几个叫法 ...
- 【原】Spark之机器学习(Python版)(二)——分类
写这个系列是因为最近公司在搞技术分享,学习Spark,我的任务是讲PySpark的应用,因为我主要用Python,结合Spark,就讲PySpark了.然而我在学习的过程中发现,PySpark很鸡肋( ...
- Kaggle实战之二分类问题
0. 前言 1. MNIST 数据集 2. 二分类器 3. 效果评测 4. 多分类器与误差分析 5. Kaggle 实战 0. 前言 "尽管新技术新算法层出不穷,但是掌握好基础算法就能解决手 ...
- 准确率(Accuracy), 精确率(Precision), 召回率(Recall)和F1-Measure(对于二分类问题)
首先我们可以计算准确率(accuracy),其定义是: 对于给定的测试数据集,分类器正确分类的样本数与总样本数之比.也就是损失函数是0-1损失时测试数据集上的准确率. 下面在介绍时使用一下例子: 一个 ...
- 监督学习——logistic进行二分类(python)
线性回归及sgd/bgd的介绍: 监督学习--随机梯度下降算法(sgd)和批梯度下降算法(bgd) 训练数据形式: (第一列代表x1,第二列代表 x2,第三列代表 数据标签 用 0/ ...
- keras实现简单性别识别(二分类问题)
keras实现简单性别识别(二分类问题) 第一步:准备好需要的库 tensorflow 1.4.0 h5py 2.7.0 hdf5 1.8.15.1 Keras 2.0.8 opencv-p ...
- Logistic回归二分类Winner or Losser----台大李宏毅机器学习作业二(HW2)
一.作业说明 给定训练集spam_train.csv,要求根据每个ID各种属性值来判断该ID对应角色是Winner还是Losser(0.1分类). 训练集介绍: (1)CSV文件,大小为4000行X5 ...
- matlab-逻辑回归二分类(Logistic Regression)
逻辑回归二分类 今天尝试写了一下逻辑回归分类,把代码分享给大家,至于原理的的话请戳这里 https://blog.csdn.net/laobai1015/article/details/7811321 ...
- tensorflow实现二分类
读万卷书,不如行万里路.之前看了不少机器学习方面的书籍,但是实战很少.这次因为项目接触到tensorflow,用一个最简单的深层神经网络实现分类和回归任务. 首先说分类任务,分类任务的两个思路: 如果 ...
随机推荐
- SpringAOP/切面编程示例
原创:转载需注明原创地址 https://www.cnblogs.com/fanerwei222/p/11833954.html Spring AOP/切面编程实例和一些注意事项, 主要是利用注解来实 ...
- Haproxy配合Nginx搭建Web集群部署
Haproxy配合Nginx搭建Web集群部署实验 1.Haproxy介绍 2.Haproxy搭建 Web 群集 1.Haproxy介绍: a)常见的Web集群调度器: 目前常见的Web集群调度器分为 ...
- tarjan——有向图、无向图
强连通块只存在于有向无环图DAG中 实际上low[i]的理解是:一个强连通块在dfs搜索树中子树的根节点 //把一个点当成根提溜出来,抖搂抖搂成一棵树 void dfs(int u) { //记录df ...
- Hive之同比环比的计算
Hive系列文章 Hive表的基本操作 Hive中的集合数据类型 Hive动态分区详解 hive中orc格式表的数据导入 Java通过jdbc连接hive 通过HiveServer2访问Hive Sp ...
- linux 运维工程师如何降低工作难度
文章目录 1.Linux "优化" 2.git "优化" 3.mysql "优化" 4.kubernetes "优化" ...
- Dubbo SPI机制之三Adaptive自适应功能
JDK标准中SPI机制的一个问题就是其一次性实例化扩展点所有实现,如果有扩展实现初始化很耗时,但如果没用上也加载,会很浪费资源:扩展点加载失败,其他扩展点都用不了了.Dubbo是如何解决该问题动态的选 ...
- SpringMVC的web配置
之前并没有意愿写关于下面内容的小作文.因为总结SPI相关的标准(SPI机制之JDK中的SPI - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)),而这个也是关于标准的,Servlet3.0 ...
- 详细介绍Windows下也能够使用osw性能升级历史
1.Windows系统历史性能分析困难背景 在Linux/Unix上.要追朔历史性能,一般採用部署nmon进行性能监控採集与存储的方式实现.可是却没有在Windows上的版本号. Windows系统假 ...
- 数据库项目部署(nginx)
1.在虚拟机2008server下载nginx http://nginx.org/download/nginx-1.17.10.zip 注1:此版本为window版本 linux版本 2. 解压软件至 ...
- QT通过静态库调用Go
## 编写Go代码 package main import( "fmt" "C" ) //export test func test(str *C.char) ...