AtCoder Beginner Contest 057
分析:24进制转换
#include<iostream>
using namespace std;
int main()
{
int a,b;
while(cin>>a>>b){
cout<<(a+b)%<<endl;
}
return ;
}
分析:求曼哈顿距离最近的点
#include "iostream"
#include "cstdio"
#include "cstring"
#include "string"
#include "cmath"
using namespace std;
const int maxn=+;
const long long INF=;
int n,m;
int vis[maxn];
typedef struct
{
long long x,y;
}point;
typedef struct{
long long x,y;
int num;
}fun;
point p[maxn];
fun s[maxn];
int main()
{
while(cin>>n>>m)
{
memset(vis,,sizeof(vis));
for(int i=;i<=n;i++)
scanf("%lld%lld",&p[i].x,&p[i].y);
for(int i=;i<=m;i++){
scanf("%lld%lld",&s[i].x,&s[i].y);
s[i].num=i;
}
for(int i=;i<=n;i++){
long long minx=INF;
int k=;
for(int j=;j<=m;j++){
long long t=abs(p[i].x-s[j].x)+abs(p[i].y-s[j].y);
if(t<minx){
minx=t;
k=j;
}
}
printf("%d\n",k);
}
}
return ;
}
分析:求所有两个相乘为N的数的最大位数的最小值
#include "iostream"
#include "cstdio"
#include "cmath"
using namespace std;
const int INF=;
long long n;
int solve(long long num){
int cnt=;
while(num){
cnt++;
num/=;
}
return cnt;
}
int main()
{
while(cin>>n){
long long minx=INF;
//cout<<solve(10000)<<endl;
for(long long i=;i*i<=n;i++){
if(n%i==){
long long t=max(solve(i),solve(n/i));
minx=min(minx,t);
}
}
cout<<minx<<endl;
}
}
分析:首先我们按照从大到小进行排序,然后选取前a个,这样得出来的平均值一定是最大的。然后接着我们统计总共有多少个跟a相同的数,并统计在第a个数之前有多少个跟a相同的数,如果第1个数个数跟第a个相同,则为c[x][y],否则我们统计从a到b的组合数相加.注意求组合数的方法,很经典。
#include "iostream"
#include "cstdio"
#include "cstring"
#include "string"
#include "cmath"
#include "algorithm"
#include "map"
#include "set"
#include "vector"
#define eps 1e-6
using namespace std;
const int maxn=;
double s[maxn];
long long c[maxn][maxn];
int n,a,b;
bool cmp(double x,double y){
return x>y;
}
void init(){
c[][]=;
for(int i=;i<=n;i++){
c[i][]=,c[i][i]=;
for(int j=;j<i;j++)
c[i][j]=c[i-][j-]+c[i-][j];
}
}
int main()
{
while(cin>>n>>a>>b){
init();
for(int i=;i<n;i++)
cin>>s[i];
sort(s,s+n,cmp);
double sum=;
for(int i=;i<a;i++){
sum+=s[i];
}
double h=sum/(double)a;
int x=,y=;
for(int i=;i<n;i++)
if(s[i]==s[a-]){
x++;
if(i<a)
y++;
}
//cout<<x<<" "<<y<<endl;
printf("%.6f\n",h);
if(s[]!=s[a-]){
cout<<c[x][y]<<endl;
}else{
long long cnt=;
for(int i=a;i<=min(b,x);i++)
cnt+=c[x][i];
cout<<cnt<<endl;
}
//printf("%d\n",ans);
}
return ;
}
AtCoder Beginner Contest 057的更多相关文章
- AtCoder Beginner Contest 057 ABCD题
A - Remaining Time Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Dol ...
- AtCoder Beginner Contest 100 2018/06/16
A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...
- AtCoder Beginner Contest 052
没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...
- AtCoder Beginner Contest 053 ABCD题
A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...
- AtCoder Beginner Contest 136
AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...
- AtCoder Beginner Contest 137 F
AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...
- AtCoder Beginner Contest 076
A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...
- AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】
AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...
- AtCoder Beginner Contest 064 D - Insertion
AtCoder Beginner Contest 064 D - Insertion Problem Statement You are given a string S of length N co ...
随机推荐
- Netty和Akka有什么不同?
摘要: Akka is a concurrency framework built around the notion of actors and composable futures, Akka w ...
- Js 流程控制
流程控制 顺序.分支.循环 顺序结构 代码一行一行从上往下执行并解析 分支结构 if语句 switch语句 if语句 单分支 if(条件表达式){ //语句块 } 含义:当条件表达式为真的时候就执行里 ...
- 【Java】NIO中Selector的select方法源码分析
该篇博客的有些内容和在之前介绍过了,在这里再次涉及到的就不详细说了,如果有不理解请看[Java]NIO中Channel的注册源码分析, [Java]NIO中Selector的创建源码分析 Select ...
- 洛谷——P1057 传球游戏
P1057 传球游戏 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹 ...
- ubuntu安装软件或upgrade出现 You might want to run 'apt-get -f install' to correct these
今天在ubuntu下安装任何软件都提示以下错误: You might want to run 'apt-get -f install' to correct these:The following p ...
- sourcetree帮助文档
Overview SourceTree可以在bookmarks界面跟踪所有的git和mercurial项目.可以概览工程中是否有需要提交的文件等.添加新的bookmark很简单,可以通过两种方式,通过 ...
- 自动调整文字高度With what should I replace the deprecated sizeWithFont:contrainedToSize:lineBreakMode method?
自动调整文字的高度: ios 2.0 ~ 7.0以下: UILabel *orgnizationLabel = [[UILabel alloc]initWithFrame:CGRectMake(0, ...
- Ubuntu 16.04 同时使用python3.5
Python 3.x版本使用pip3,它会把你想下载的包放到usr/local/lib/python3.5/dist-packages/下,而非usr/local/lib/python2.7/dist ...
- mac下配置eclipse的maven环境
转自:http://www.cnblogs.com/yqskj/archive/2013/03/30/2990292.html 1.下载maven的bin包,解压,配置到环境变量里面去 1). 首先到 ...
- 应用require.js进行javascript模块化编程小试一例
长久以来都渴望应用javascript的模块化编程.今日紧迫更甚,岁月蹉跎,已经不能再等了. 拜读阮一峰的有关文章已经好几遍,文章写得真好,简洁流畅,头头是道,自觉有点明白了.但经验告诉我们,一定要亲 ...