Day3-T1
2024-09-02 17:48:04
Describe:暴力出奇迹 [ 注意步长0.5!]
code:
#include<bits/stdc++.h>
using namespace std;
inline int read(){
int f=1,res=0,ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();};
while(ch>='0'&&ch<='9'){res=res*10+ch-'0';ch=getchar();};
return res*f;
}
int n,l,sum,a[201];
double b[201],b2[201];
int tot1,tot2,ans;
int main()
{
n=read(),l=read();
for(int i=1;i<=n;i++)a[i]=read();
sort(a+1,a+n+1);
for(double i=0.5;i<l;i+=0.5) //可行性剪枝:仅可能存在于某节点或相邻两节点中点
{
tot1=0;tot2=0;sum=0;
memset(b,0,sizeof(b));
memset(b2,0,sizeof(b2)); for(int j=1;j<=n;j++) //L or R
if(a[j]<i)b[++tot1]=i-a[j];
else if(a[j]>i)b2[++tot2]=a[j]-i; sort(b+1,b+tot1+1);sort(b2+1,b2+tot2+1); for(int i=1;i<=min(tot1,tot2);i++)
if(b[i]==b2[i])sum++;else break; if(sum==tot1||sum==tot2)ans++; //与左半部分一样多或与右半部分一样多
}
cout<<ans<<endl;
}
最新文章
- Redis简单案例(四) Session的管理
- Delphi控件之---通过编码学习TStringGrid(也会涉及到Panel控件,还有对Object Inspector的控件Events的介绍
- UUID工具
- sql 截取字符串第一次出现字符之前的数据
- js方法的命名不能使用表单元素的名称或ID
- 看到的一些js小知识
- eclipse里index.jsp头部报错的原因和解决方法
- IDEA下运行 mybatis报错 Parameter &#39;arg0&#39; not found. Available parameters are [autoRecharge, id, param1, param2]
- Gym - 101350G Snake Rana(容器原理)
- App分享之微信微博等各个社交平台的分享授权规则和常见问题
- 【洛谷P2704【NOI2001】】炮兵阵地
- Disruptor多个消费者不重复处理生产者发送过来的消息
- 网络图片转换到本地并转换成base64位
- 请用js去除字符串空格?
- 20145332卢鑫 WEB基础
- 中国大学MOOC-陈越、何钦铭-数据结构-笔记
- logger示例
- PowerDesigner16导出SQL时如何添加注释
- sqpark编译时maven的pom文件内容(org.apachetype.maven.apachetypes:maven.archetypequickstat)
- go内建容器-切片