D2
Cosmic Cleaner:
为什么大家都知道球缺怎么求,我没听说过啊???
我真的是印象里今天第一次听说球缺这个东西啊。。。
我一看,哇,神仙几何题,毫无头绪,投了投了,然后就被过穿了???
tlsnb!!!
知道了公式以后求一求就阔以了
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define pi 3.1415926535
int t,n,x[],y[],z[],r[];
int xx,yy,zz,rr;
double dis(int id){
return sqrt((x[id]-xx)*(x[id]-xx)+(y[id]-yy)*(y[id]-yy)+(z[id]-zz)*(z[id]-zz));
}
int main(){
ios::sync_with_stdio(false);
cin>>t;
for(int cas=;cas<=t;cas++){
cin>>n;
for(int i=;i<=n;i++){
cin>>x[i]>>y[i]>>z[i]>>r[i];
}
cin>>xx>>yy>>zz>>rr;
double ans = ; for(int i=;i<=n;i++){
double len = dis(i);
if(len+r[i]<=rr){//在内部
ans+=4.0/*pi*r[i]*r[i]*r[i];
} else if(len+r[i]>rr&&len<rr){//一大块在里面
double h1 = (rr*rr-r[i]*r[i]-len*len)//len;
double h2 = h1+len;
double v1 = pi/*(*r[i]-(r[i]-h1))*(r[i]-h1)*(r[i]-h1);//小的
double v2 = pi/*(*rr-(rr-h2))*(rr-h2)*(rr-h2);//大的
ans+=4.0/*pi*r[i]*r[i]*r[i];
ans-=v1;ans+=v2;
} else if(len>=rr&&len<=rr+r[i]){
double k = rr+r[i]-len;
double h2 = (k*k-*k*r[i])/(*k-*rr-*r[i]);
double h1 = k-h2;
double v1 = pi/*(*r[i]-h1)*h1*h1;//小的
double v2 = pi/*(*rr-h2)*(h2)*(h2);//大的
ans+=v1+v2;
}
}
printf("Case #%d: %.10f\n",cas,ans);
}
}
B:
官方做法不会,当时听的时候觉得奇难无比,后来大家果然很多贪心的,,。 把操作当成是 两次 删除一个。
考虑删一个 从前向后遍历:如果一个串长度是最短的并且字典序比后面的串小,那肯定删啊留着干啥啊。。。
如果很不幸没有这样的串,然而我们又要保证删的是长度最小的,我们就把最后一个长度最小的删掉好了。
重复两次。搞到T恤了舒服qwq(Day3).
一首 届不到の爱恋 送给大家!!!
#include <bits/stdc++.h>
using namespace std;
int t,n;
struct Node{
char s[];
int len;
int flag;
}a[];
int main(){//考虑执行两次删除操作
//ios::sync_with_stdio(false);
cin>>t;
for(int cas=;cas<=t;cas++){
cin>>n;
for(int i=;i<=n;i++){
cin>>a[i].s;
a[i].len = strlen(a[i].s);
a[i].flag=;
}
int id1=-,id2=-;
int minn = 0x3f;
for(int i=;i<=n;i++){
minn = min(minn,a[i].len);
}
for(int i=;i<=n;i++){//如果从前面 有个最短的比后面的字典序小
if(minn!=a[i].len)continue;
if(i+<=n){
if(strcmp(a[i].s,a[i+].s)<){
id1=i;
a[i].flag=;
break;
}
}
}
if(id1==-){//不存在的话就从后向前删最小
for(int i=n;i>=;i--){
if(a[i].len==minn){
a[i].flag=;
break;
}
}
}
minn = 0x3f;
for(int i=;i<=n;i++) {
if(a[i].flag)continue;
minn = min(minn, a[i].len);
}
for(int i=;i<=n;i++){
if(a[i].flag)continue;
if(minn == a[i].len){
int j=i+;
if(a[j].flag) j++;
if(strcmp(a[i].s,a[j].s)<){
id2=i;
a[i].flag=;
break;
}
}
}
if(id2==-){
for(int i=n;i>=;i--){
if(a[i].flag)continue;
if(a[i].len==minn){
a[i].flag=;
break;
}
}
}
printf("Case #%d: ",cas);
for(int i=;i<=n;i++){
if(a[i].flag)continue;
cout<<a[i].s;
}
cout<<endl;
}
}
K: 拼木棍

哇不会搜索啊!!!头痛欲裂 拖了一个星期,,今天看了看谈姐姐代码发现非常好懂,其实之前就懂了一直没去想怎么写,不过他那份已经被卡T了,貌似时限短了1000ms,然后我给改成了正解,就是预处理所有排列然后遍历就阔以,,,这么沙雕的题为什么我当时不会呢。。。看来早起果然可以提高人的智商,感觉智商巅峰期就是8:00-10:00了
#include <bits/stdc++.h>
using namespace std;
inline int read() {
int X=,w=; char c=getchar();
while (c<''||c>'') { if (c=='-') w=-; c=getchar(); }
while (c>=''&&c<='') X=(X<<)+(X<<)+c-'',c=getchar();
return X*w;
}
int d[][],tmp[],tot=;
int c[];
void dfs(int num,int now){
int b[];
if(num==){//
tmp[now+]=c[];
tmp[now+]=c[];
tmp[now+]=c[];
tot++;
for(int i=;i<=;i++){
d[tot][i]=tmp[i];
}
return;
}
for(int i=;i<=num;i++) b[i]=c[i];
int st;
for(int i=;i<num;i++){
for(int j=i+;j<=num;j++){
tmp[now+]=b[];
tmp[now+]=b[i];
tmp[now+]=b[j];
st=;
for(int k=;k<=num;k++){
if(k!=&&k!=j&&k!=i)
c[++st]=b[k];
}
dfs(num-,now+);
}
}
}
int t,a[],f[][][];
int main(){
for(int i=;i<=;i++)c[i]=i;
dfs(,);
t=read();
for(int cas=;cas<=t;cas++){
for(int i=;i<=;i++)a[i]=read();
sort(a+,a+);
for(int i=;i<=;i++){
for(int j=i+;j<=;j++){
for(int k=j+;k<=;k++){
if(a[i]+a[j]>a[k])
f[i][j][k]=;
else
f[i][j][k]=;
}
}
}
int ans = ;
vector<int> v;
for(int i=;i<=tot;i++){
int num=;
for(int j=;j<=;j+=){
if(f[d[i][j]][d[i][j+]][d[i][j+]])
num++;
}
if(num>ans){
ans=num;
v.clear();
for(int j=;j<=;j+=){
if(f[d[i][j]][d[i][j+]][d[i][j+]]) {
v.push_back(d[i][j]);
v.push_back(d[i][j+]);
v.push_back(d[i][j+]);
}
}
}
if(ans==)
break;
}
printf("Case #%d: %d\n",cas,ans);
for(int i=;i<v.size();i++){
if(i%==)
printf("%d\n",a[v[i]]);
else
printf("%d ",a[v[i]]);
}
}
}
/**
1
1 2 3 4 5 6 7 8 9 10 11 12
*/
D2的更多相关文章
- [Noip2016]蚯蚓 D2 T2 队列
[Noip2016]蚯蚓 D2 T2 Description 本题中,我们将用符号[c]表示对c向下取整,例如:[3.0」= [3.1」=[3.9」=3.蛐蛐国最近蚯蚓成灾了!隔壁跳 蚤国的跳蚤也拿蚯 ...
- [NOIP2016]愤怒的小鸟 D2 T3 状压DP
[NOIP2016]愤怒的小鸟 D2 T3 Description Kiana最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于(0,0)处,每次Kiana可 ...
- 谈谈D2
很多参与了 D2 的人还不知道 D2 是个什么东西,印象中就是很多很多前端工程师汇聚在一起,交流技术.D2 是 D2前端技术论坛的简称,英文名 Designer & Developer Fro ...
- [NOIP2015]运输计划 D2 T3 LCA+二分答案+差分数组
[NOIP2015]运输计划 D2 T3 Description 公元2044年,人类进入了宇宙纪元. L国有n个星球,还有n-1条双向航道,每条航道建立在两个星球之间,这n-1条航道连通了L国的所有 ...
- Codeforces Round #350 (Div. 2) D2 二分
五一期间和然然打的团队赛..那时候用然然的号打一场掉一场...七出四..D1是个数据规模较小的题 写了一个暴力过了 面对数据如此大的D2无可奈何 现在回来看 一下子就知道解法了 二分就可以 二分能做多 ...
- 成功在神舟K650c-i7 d2(i7-4700MQ、HM87)上装好了Windows XP
成功在神舟K650c-i7 d2(i7-4700MQ.HM87)上装好了Windows XP 本来已经在K650c上装好了Windows7.Windows8双系统,奈何某些旧软件只能在Windows ...
- Codeforces Round #350 (Div. 2) D2. Magic Powder - 2
题目链接: http://codeforces.com/contest/670/problem/D2 题解: 二分答案. #include<iostream> #include<cs ...
- D2 前端技术论坛总结(下)
此篇文章不接上篇了,下午4场我就不一一介绍了,主要总结下 D2 整场下来都讲了些什么. 整场下来,就3个关键词:nodejs,多终端,工程化 nodejs 从杭js到d2,大会上提到最多的词汇 ...
- D2 前端技术论坛总结(上)
得幸获得D2前端技术论坛门票一张,今天就去了,公司还给批假了(有可能不会算做请假,哈哈). 早上8点50出门,骑个小毛驴,大概9点30分左右,到了阿里巴巴西溪园区,很多人,进去的门口有专人接待,看D2 ...
- 记录一次参加D2前端技术论坛的杭州之行
前言 在这里,闰土首先要感谢以下两位大佬提供的门票,分别是来自新浪微博部门的H同学,以及来自小米科技的D同学. 当我周六晚上在青旅写完这篇文章过后,第二天上网发现,已经有大佬提前一步在掘金上发布了高质 ...
随机推荐
- tk.mybatis通用插件updateByPrimaryKeySelective无法自动更新ON UPDATE CURRENT_TIMESTAMP列的解决办法
tk.mybatis是一个很好用的通用插件,把CRUD这些基本的数据操作全都用动态SQL语句自动生成了,mapper和xml里十分清爽,但是昨天发现有一个小坑,记录在此: 有一张表,结构如下(已经简化 ...
- IE环境表单提交不跳转页面
<head> <base target="_self"></base> </head>
- Oracle 11g透明网关连接Sqlserver
Oracle 11g透明网关连接Sqlserver oracle 透明网关是oracle连接异构数据库提供的一种技术.通过Gateway,可以在Oracle里透明的访问其他不同的数据库,如SQL Se ...
- Android 实现登录界面和功能实例
近期一个android小程序须要登录功能,我简单实现了一下.如今记录下来也当做个笔记,同一时候也希望能够相互学习.所以,假设我的代码有问题,还各位请提出来.多谢了! 以下.就简述一下此实例的主要内容: ...
- mysql string 列类型
CHAR和VARCHAR CHAR和VARCHAR类型声明的长度表示你想要保存的最大字符数 char 0~255 尾部填充空格到指定长度,检索时自动去掉空格. varchar 0~65535 VARC ...
- Python 简单入门指北(一)
Python 简单入门指北(一) Python 是一门非常容易上手的语言,通过查阅资料和教程,也许一晚上就能写出一个简单的爬虫.但 Python 也是一门很难精通的语言,因为简洁的语法背后隐藏了许多黑 ...
- 如何在你的Vue项目配置vux
做移动端项目的话vue现在是首要的选择,足够轻便,文档足够全,当然用的人多,项目中遇到的坑别人可能也遇到过,解决起来也比较方便,至于在开发中做需要的移动端组件库,个人比较推崇vux. 其实项目里组件库 ...
- 【iCore4 双核心板_ARM】例程二十六:LWIP_MODBUS_TCP实验——电源监控
实验现象: 核心代码: int main(void) { system_clock.initialize(); led.initialize(); adc.initialize(); delay.in ...
- .NET Core 2.1 IIS 部署 出现500.19 错误
HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 最后发现是由于项目从 .NET Core 1.0 升级到 .NET Co ...
- 看雪CTF第八题
IDA查看Exports有3个TlsCallback 只有TlsCallback_2有用 其中创建6个线程用于代码动态解码smc 只有前三个线程有用 分别对check_part1,check_part ...