23333333333333333

由于情人节要回家,所以就先只放代码了。

此题是与我胖虎过不去。

【E. 出老千的 xjj】

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=;
#define ll long long
int i,j,n,k,x;
ll p[maxn+],sum[maxn+],tmp,ans=,Max=;
int main()
{
scanf("%d%d",&n,&k);
for(i=;i<=n;i++){
scanf("%d",&x);
tmp+=x;
p[x]++;
}
if(tmp<=k){
printf("0\n");
return ;
}
for(i=;i<=maxn;i++) {
sum[i]=sum[i-]+p[i]*i;
p[i]+=p[i-];
}
for(i=;i<=maxn;i++){
ll yy=(k-)/i+;
ll xx=n;
tmp=;
//if(k%i==0&&yy<xx) continue;
if(k%i==) continue; //上面的WA了
for(j=;j<maxn/i;j++){
int n1=(j+)*i,n2=j*i+;
if(n2<) n2=;
xx+=(p[n1]-p[n2-]);
tmp+=(p[n1]-p[n2-])*((j+)*i)-sum[n1]+sum[n2-];
if(k%i==&&yy<xx) break;
if(tmp>ans) break;
}
if((k%i==&&xx<=yy)||k%i!=){
ans=min(ans,tmp);
}
}
cout<<ans<<endl;;
return ;
}

【A2】

#include<iostream>
#include<cstdio>
#include<cstring>
#include<ctime>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<string>
using namespace std;
int n,k,p;
int num[]={,,,,,},cost[];
long long f[];
int main(){
scanf("%d%d%d",&n,&k,&p);
for(int i=;i<=k;i++){
long long temp=1LL*i*p;
for(int j=;j<=;j++)
if(temp>=num[j]){
cost[i]+=temp/num[j];
temp%=num[j];
}
}
memset(f,,sizeof(f));
f[]=;
for(int i=;i<=;i++)
for(int j=max(,i-k);j<i;j++)
f[i]=min(f[i],f[j]+cost[i-j]);
if(n<=){
cout<<f[n]<<endl;
return ;
}
int way=;
for(int i=;i<=k;i++)
if(1.0*i/cost[i]>1.0*way/cost[way])
way=i;
int t1=n/way,t2=n%way;
long long ans=1LL*t1*cost[way]+f[t2];
for(int i=;i<=;i++){
t1=n/way-i;
t2=n-way*t1;
ans=min(ans,1LL*t1*cost[way]+f[t2]);
}
cout<<ans<<endl;
return ;
}

【B】

#include<iostream>
#include<cstdio>
#include<cstring>
#include<ctime>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<string>
using namespace std;
int N,sta[];
int f[];
struct edge{
int x,y;
}e[];
int have[][],cnt[];
int check(int x,int s){
bool flag=;
for(int i=;i<=cnt[x];i++)
if(s&sta[have[x][i]]){
flag=;
break;
}
if(!flag)
return -;
for(int i=;i<=cnt[x];i++)
if(s&sta[have[x][i]])
s^=sta[have[x][i]];
return s;
}
int dfs(int s){
if(f[s]!=-)
return f[s];
for(int i=;i<=N;i++){
int temp=check(i,s);
if(temp!=-)
if(!dfs(temp))
return f[s]=;
}
return f[s]=;
}
int main(){
sta[]=;
for(int i=;i<=;i++)
sta[i]=sta[i-]*;
scanf("%d",&N);
for(int i=;i<N-;i++){
scanf("%d%d",&e[i].x,&e[i].y);
have[e[i].x][++cnt[e[i].x]]=i;
have[e[i].y][++cnt[e[i].y]]=i;
}
memset(f,-,sizeof(f));
f[]=;
if(dfs(sta[N-]-))
printf("First\n");
else
printf("Second\n");
return ;
}

【F】

#include<cstdio>
#include<cstdlib>
#include<iostream>
using namespace std;
const int maxn=;
int main()
{
int T;
double a,b,c,x,y,z;
while(~scanf("%lf%lf%lf",&x,&y,&z)){
a=(2.0*y-z+x)/2.0;
b=x-a;
c=(z-a-b)/2.0;
if(a<=||b<=||c<=) printf("Wrong\n");
else printf("%.6lf\n",a);
} return ;
}

【EOJ Monthly 2018.2 (Good bye 2017)】的更多相关文章

  1. 【EOJ Monthly 2018.7】【D数蝌蚪】

    https://acm.ecnu.edu.cn/contest/92/problem/D/ D. 数蝌蚪 Time limit per test: 2.0 seconds Memory limit:  ...

  2. EOJ Monthly 2018.8 D. Delivery Service-树上差分(边权/边覆盖)(边权转点权)(模板题)

    D. Delivery Service 单测试点时限: 2.5 秒 内存限制: 512 MB EOJ Delivery Service Company handles a massive amount ...

  3. EOJ Monthly 2018.7

    准备继续大学acm啦 又要开始愉快的码码码啦 第一次在华东师大OJ上面做题 看来EOJ上的积分体质是假的,我怎么一把上红??? A.数三角形 神tm的防AK题放在A,出题人很不友好啊... 先写了个暴 ...

  4. EOJ Monthly 2018.4

    A. ultmaster 的小迷妹们 Time limit per test: 2.0 seconds Memory limit: 256 megabytes ultmaster 男神和他的小迷妹们准 ...

  5. EOJ Monthly 2018.4 (E.小迷妹在哪儿(贪心&排序&背包)

    ultmaster 男神和小迷妹们玩起了捉迷藏的游戏. 小迷妹们都希望自己被 ultmaster 男神发现,因此她们都把自己位置告诉了 ultmaster 男神,因此 ultmaster 男神知道了自 ...

  6. [EOJ Monthly 2018.10][C. 痛苦的 01 矩阵]

    题目链接:C. 痛苦的 01 矩阵 题目大意:原题说的很清楚了,不需要简化_(:з」∠)_ 题解:设\(r_i\)为第\(i\)行中0的个数,\(c_j\)为第\(j\)列中0的个数,\(f_{i,j ...

  7. EOJ Monthly 2018.11 D. 猜价格

    猜价格 分两种情况讨论: k≤n,先猜至多 k 次 1,由于回答 <1 肯定是假的,所以可以把剩余系下是哪次错试出来,然后用至多 n 次搞定. k>n,每个数都猜两次,如果两次结果不一样, ...

  8. EOJ Monthly 2018.7 B.锐角三角形(数学几何+思维)

    描述 是否存在面积为S/2的整点锐角三角形?存在输出Yes并输出三个整点坐标,否则输出No. 注意如果存在输出的坐标必须在long long范围内. Input 第一行一个整数S(1<=S< ...

  9. EOJ Monthly 2018.11 猜价格 (模拟)

    分三种情况: 1.k=1.此时每次都说反话,反着二分即可. 2.1<k <= n.那么在前n次问答中一定会出现一次错误,通过不断输出1找出那个错误发生的位置(若回答是>那这就是错误) ...

随机推荐

  1. SilverLight:布局(2)GridSplitter(网格分割)垂直分割、水平分割

    ylbtech-SilverLight-Layout: 布局(2)GridSplitter(网格分割)垂直分割.水平分割 A, Splitter(分割)对象之 GridSplitter(网格分割)1: ...

  2. Git 的使用Git Bash和Git GUI

    使用Github也有一年的时间了,之前一直都是使用的Github客户端,对提交,更新,克隆,合并,分支有一定的了解和实践.一直都想试试命令行的形式,但是感觉可能桌面版的方便就没有做. 可是Github ...

  3. jdk8之永久区Permanent区参数设置分析

    jdk8之永久区Permanent区参数设置分析 学习了:https://blog.csdn.net/wuhenzhangxing/article/details/78224905 jdk7中可以进行 ...

  4. maven的学习系列(二)—maven的文件夹结构

    maven的文件有自己的组织方式,例如以下所看到的: ---maven ----src ---main ----java ---test ----java -----pom.xml 当运行完mvn c ...

  5. redis cmd 使用样例

    Redis 命令參考 一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15 ...

  6. Windows 编程1

    杀死一个进程 使用命令 system( taskkill /f /im     QQ.exe); 即可. 打开一个进程 使用命令 system("应用程序的位置");   头文件: ...

  7. gulp-gulpfile.js语法说明

    关于gulpfile文件: 直接上代码吧!! /*! * gulp * $ npm install gulp gulp-ruby-sass gulp-cached gulp-uglify gulp-r ...

  8. C#设计模式总结 C#设计模式(22)——访问者模式(Vistor Pattern) C#设计模式总结 .NET Core launch.json 简介 利用Bootstrap Paginator插件和knockout.js完成分页功能 图片在线裁剪和图片上传总结 循序渐进学.Net Core Web Api开发系列【2】:利用Swagger调试WebApi

    C#设计模式总结 一. 设计原则 使用设计模式的根本原因是适应变化,提高代码复用率,使软件更具有可维护性和可扩展性.并且,在进行设计的时候,也需要遵循以下几个原则:单一职责原则.开放封闭原则.里氏代替 ...

  9. Django1.11.4中文文档

    Django管理站点¶ 自动管理界面是Django最强大的部分之一.它从您的模型中读取元数据,以提供一个快速,以模型为中心的界面,让受信任的用户可以管理您网站上的内容.管理员建议的使用仅限于组织的内部 ...

  10. kubernetes里的各种port解惑

    系列目录 在编排kubernetes时,Deployment的Pod项有containerPort,Service文件里的port,targetPort, nodePort,这些pod概念有些时候可能 ...