A题

分析:24进制转换

 #include<iostream>
using namespace std;
int main()
{
int a,b;
while(cin>>a>>b){
cout<<(a+b)%<<endl;
}
return ;
}

B题

分析:求曼哈顿距离最近的点

 #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 ;
}

C题

分析:求所有两个相乘为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;
}
}

D题

分析:首先我们按照从大到小进行排序,然后选取前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的更多相关文章

  1. AtCoder Beginner Contest 057 ABCD题

    A - Remaining Time Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Dol ...

  2. AtCoder Beginner Contest 100 2018/06/16

    A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...

  3. AtCoder Beginner Contest 052

    没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...

  4. AtCoder Beginner Contest 053 ABCD题

    A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...

  5. AtCoder Beginner Contest 136

    AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...

  6. AtCoder Beginner Contest 137 F

    AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...

  7. AtCoder Beginner Contest 076

    A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...

  8. AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】

    AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...

  9. AtCoder Beginner Contest 064 D - Insertion

    AtCoder Beginner Contest 064 D - Insertion Problem Statement You are given a string S of length N co ...

随机推荐

  1. AttributeError: module 're' has no attribute 'search'

    命名py脚本时,不要与python预留字,模块名等相同,即Python文件名不要使用Python系统库的名字,就是因为使用了Python系统库的名字,所以在编译的时候才会产生.pyc文件.正常的Pyt ...

  2. 洛谷P2058 仪仗队

    P2058 仪仗队 24通过 34提交 题目提供者shengmingkexue 标签数论(数学相关) 难度普及+/提高 提交该题 讨论 题解 记录 最新讨论 暂时没有讨论 题目描述 作为体育委员,C君 ...

  3. Maven使用site-deploy(site:deploy)部署通过site生成的文档(Tomcat-WebDAV)

    Maven可以通过site生成项目的帮助文档,并且格式为html,那么可以通过site-deploy把文档部署到远端,部署方式支持HTTP/FTP/SCM/WebDAV等. 更多部署方案,参考:htt ...

  4. 聊聊Code Review

    转载:https://richardcao.me/2016/09/30/Talk-About-Codereview/ 最近思考一个问题,如何进行高效的codereview,有没有好的工具可以使用,于是 ...

  5. Effective C++ 条款六 若不想使用编译器自动生成的函数,就该明确拒绝

    class HomeForSale //防止别人拷贝方法一:将相应的成员函数声明为private并且不予实现 { public: private: HomeForSale(const HomeForS ...

  6. Android中Intent具体解释(二)之使用Intent广播事件及Broadcast Receiver简单介绍

    通过第一篇的解说,我们已经看到了怎样使用Intent来启动新的应用程序组件,可是实际上他们也能够使用sendBroadcast方法来在组件间匿名的广播消息. 作为一个系统级别的消息传递机制,Inten ...

  7. 用python编写的简易端口扫描器

    #coding = utf-8 ''' python 3.4 通过简单的TCP端口连接来判断指定IP是否开放了指定端口. ''' import socket import optparse impor ...

  8. openwrt gstreamer实例学习笔记(四. gstreamer Bins)

    1)概述 Bins是一种容器element.你可以往Bins中添加element.由于Bins本身也是一种element,所以你可以像普通element一样 操作Bins.因此,先前关element的 ...

  9. 获取Bootstrap-Table的所有内容,修改行内容

    var allTableData = $tableLeft.bootstrapTable('getData');//获取表格的所有内容行 var flag = false; for( i=0;i< ...

  10. 进程-IPC 管道 (一)

    详见:https://github.com/ZhangzheBJUT/linux/blob/master/IPC(%E4%B8%80).md 一 IPC 概述 进程间通信就是在不同进程之间传播或交换信 ...