# A.Find the twins

# 题意

找出每个序列是否有特定的值

# 题解

坑,原始序列输出的时候每一行最后一个不能有空格

 #include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=2e5+;
int a[];
int n;
int main(){
n=;
int t;
cin>>t; for(int k=;k<=t;k++){
bool z=,m=;
for(int i=;i<=n;i++){
cin>>a[i];
if(a[i]==)
m=;
if(a[i]==)
z=;
} for(int i=;i<=n;i++) {
if(i!=n)
printf("%d ",a[i]);
else
printf("%d",a[i]);
}
puts("");
if(m&&z) {
puts("both");
}
else if(m) {
puts("mack");
}
else if(z) {
puts("zack");
}
else {
puts("none");
}
puts("");
} }

# B.Medal Ranking 

# 题解

水题一样还是最后一行空格

 #include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=2e5+;
int a[];
int n;
int main(){
n=;
int t;
cin>>t; for(int k=;k<=t;k++){
bool cnt=,col=;
int m1,m2,m3;
int r1,r2,r3;
cin>>m1>>m2>>m3;
cin>>r1>>r2>>r3;
int summ=m1+m2+m3;
int sumr=r1+r2+r3;
if(summ>sumr)
cnt=; if(m1 > r1)
col=;
if(m1 == r1){
if(m2>r2)
col=;
if(m2==r2){
if(m3>r3)
col=;
}
} cout<<m1<<' '<<m2<<' '<<m3<<' '<<r1<<' '<<r2<<' '<<r3<<endl;
if(col && cnt)
cout<<"both"<<endl;
else if(cnt)
cout<<"count"<<endl;
else if(col)
cout<<"color"<<endl; else cout<<"none"<<endl;
puts("");
} }

# C. Cookies

# 题解

饼干不够就切

 #include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=2e5+;
int main(){
int t;
cin>>t;
for(int i=;i<=t;i++){
int n,cnt;
cin>>n>>cnt;
printf("Practice #%d: %d %d\n",i,n,cnt);
int m;
cin>>m;
for(int j=;j<=m;j++){
int x;
cin>>x;
while(x>=cnt)
cnt*=;
cnt-=x;
cout<<x<<' '<<cnt<<endl;
}
puts("");
} }

# D. Lemonade Stand

# 题意

一个柠檬水店,每一杯柠檬水的制作需要糖和柠檬,知道每天都会来多少人,每天柠檬和糖的原材料价格都不一样,

每天可以买任意多的和任意少的,每天的所有客人都要被满足,每天的价格是单个柠檬的价格和80 盎司糖的价格,剩下的原料第二天可以使用。

# 题解

从前往后只记录之前的价格的最小值即可,因为糖只能一包一包买也就是80盎司,

第二天可以使用第一天剩余的,并且只能第二天使用,剩余的一定小于80盎司。

 #include <bits/stdc++.h>
#define ll long long
using namespace std;
struct node{
ll cnt,pl,ps;
}day[];
void work(){
ll d,x,y;
cin>>d>>x>>y;
day[].pl=INT_MAX;
day[].ps=INT_MAX;
for(int i=;i<=d;i++){
cin>>day[i].cnt>>day[i].pl>>day[i].ps;
day[i].pl=min(day[i].pl,day[i-].pl);
day[i].ps=min(day[i].ps,day[i-].ps);
} ll ans=,now_r=;
for(int i=;i<=d;i++){ ans+=day[i].cnt*x*day[i].pl;
now_r-=day[i].cnt * y;
while(now_r<){
now_r+=;
ans+=day[i].ps;
}
//ll need=day[i].cnt*y;
//need-=now_r; /*if(need > 80 && need % 80){
now_r = (need/80+1)*80 - need;
ans+=(need / 80 +1) * day[i].ps;
}
else if(need > 80 && !(need % 80)){
now_r= 0;
ans+=need/80 * day[i].ps;
}
else if(need<80){
now_r=80-need;
ans+=day[i].ps;
}
*/ }
cout<<ans<<endl;
}
int main(){
int t;
cin>>t;
while(t--){
work();
}

# E.Rain Gauge

# 题意

即给定一个正方形和圆,求圆覆盖正方形的面积

# 题解

分成三种情况,两种正好的情况直接计算,另一种求出来出来的面积,圆的面积减去即可

利用反三角函数,反三角函数返回的是弧度制

 #include<bits/stdc++.h>
#define ll long long
using namespace std;
const double pi=3.14159265358979;
int main(){
int t;
cin>>t;
for(int i=;i<=t;i++){
double s,r;
cin>>s>>r;
double d=s/;
double p=sqrt()*d;
double ans;
if(r>=p) {
ans = s*s;
}
else if(r<=d)
ans=pi*r*r;
else if(r<p && r>d){
double c= sqrt(r*r-d*d);
double rec=c*d;
double jd=*acos(d/r);
double cir=jd*r*r/;
double la=cir-rec;
ans = pi*r*r-*la;
}
cout<<fixed<<setprecision()<<ans<<endl;
} }

# G.Towers of Hanoi grid 

# 题意 

n*n的网格,从(1,1)中的d个从上到下递减的塔移动到(n,n)点上去,

除了(1,1)和(n,n)以外其余的点只能放一个塔,如果能移动求最少的移动次数,如果不行输出impossible

# 题解

画图易知必须有一条可行的哈密顿路径供最下面的塔移动到(n,n)

 #include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int main(){
int t;
cin>>t;
for(int i=;i<=t;i++){
int d,n;
cin>>d>>n;
if(d > (n-)*(n-)+)
cout<<"Grid #"<<i<<": "<<"impossible"<<endl;
else
cout<<"Grid #"<<i<<": "<<d*(n-)*<<endl;
puts("");
}
return ; }

计蒜客 UCF 2015的更多相关文章

  1. 计蒜客:Entertainment Box

    Ada, Bertrand and Charles often argue over which TV shows to watch, and to avoid some of their fight ...

  2. 计蒜客 作弊揭发者(string的应用)

    鉴于我市拥堵的交通状况,市政交管部门经过听证决定在道路两侧安置自动停车收费系统.当车辆驶入车位,系统会通过配有的摄像头拍摄车辆画面,通过识别车牌上的数字.字母序列识别车牌,通过连接车管所车辆信息数据库 ...

  3. 计蒜客的一道题dfs

    这是我无聊时在计蒜客发现的一道题. 题意: 蒜头君有一天闲来无事和小萌一起玩游戏,游戏的内容是这样的:他们不知道从哪里找到了N根不同长度的木棍, 看谁能猜出这些木棍一共能拼出多少个不同的不等边三角形. ...

  4. 计蒜客模拟赛5 D2T1 成绩统计

    又到了一年一度的新生入学季了,清华和北大的计算机系同学都参加了同一场开学考试(因为两校兄弟情谊深厚嘛,来一场联考还是很正常的). 不幸的是,正当老师要统计大家的成绩时,世界上的所有计算机全部瘫痪了. ...

  5. 计蒜客 等边三角形 dfs

    题目: https://www.jisuanke.com/course/2291/182238 思路: 1.dfs(int a,int b,int c,int index)//a,b,c三条边的边长, ...

  6. 计蒜客 方程的解数 dfs

    题目: https://www.jisuanke.com/course/2291/182237 思路: 来自:https://blog.csdn.net/qq_29980371/article/det ...

  7. 计蒜客 买书 dfs

    题目: https://www.jisuanke.com/course/2291/182236 思路: 递归解决,从第一本书开始,每本书都有两种选择: //index是book里面每本书价格的下标, ...

  8. 爬虫acm比赛成绩(多页成绩整合在一起、获取复制不了的数据)(hihocoder、计蒜客)

    https://github.com/congmingyige/web-crawler_rank-of-competition-in-JiSuanKe-and-hihocoder 1. 计蒜客(获取复 ...

  9. 计蒜客 31436 - 提高水平 - [状压DP]

    题目链接:https://nanti.jisuanke.com/t/31436 作为一名车手,为了提高自身的姿势水平,平时的练习是必不可少的.小 J 每天的训练包含 $N$ 个训练项目,他会按照某个顺 ...

随机推荐

  1. 计算机网络基础:TCP和UDP

    UDP(用户数据报协议) 应用场景:一个数据包就能完成数据通信:不需要建立会话和流量控制:多播.广播:是一种不可靠传输.(例如QQ聊天,屏幕广播) UDP协议特点: UDP是无连接的,即发送数据之前不 ...

  2. 64位Win7下用VS2010编译OpenSSL

    http://blog.csdn.net/henter/article/details/8364532 首先要说明,如果不想自己编译OpenSSL,可以到 http://slproweb.com/pr ...

  3. C/C++中指针和引用之相关问题研究

    一.基本知识 指针和引用的声明方式: 声明指针: char* pc; 声明引用: char c = 'A'                   char& rc = c; 它们的区别: ①从现 ...

  4. LeetCode.509——斐波那契数

    问题描述: 斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列.该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和.也就是: F(0) = 0, F(1) = 1 F(N) ...

  5. Java面向对象XMind

    Java面向对象的思维导图

  6. vs2017项目上传到github

    如果要把项目提交到一个厂库里面,需要建个git存储库,比如选择新建git库选择VSVIEW文件夹,以后在这个文件夹下的项目,提交时都会提交到VSVIEW这个github仓库 选择的文件夹不在git文件 ...

  7. IP multicast IP多播

    https://networklessons.com/multicast/multicast-routing/ IP多播有两种模式,密集模式和稀疏模式: Dense Mode Sparse Mode ...

  8. VNC 远程桌面 连接(安装桌面程序)

    1.修改linux启动方式       # vi /etc/inittab         将3改为5     id:5:initdefault:   2.关闭防火墙(或者单独打开接口)     #s ...

  9. linux的那些事-时间 时区

    时间表示: 用法:date [选项]... [+格式] 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] 以给定的格式显示当前时间,或是设置系 ...

  10. drf认证组件、权限组件、jwt认证、签发、jwt框架使用

    目录 一.注册接口 urls.py views.py serializers.py 二.登录接口 三.用户中心接口(权限校验) urls.py views.py serializers.py 四.图书 ...