UOJ Goodbye Bingshen
在叶子童鞋的推荐下打了这场比赛...
感觉被虐爆了...
怎么这么多构造题...
我还没写过呢...
交互题是毛线...看了好久没看懂...就放弃了...(我语文好差QAQ...)
最后只会T1...T2没时间了,就随便水了一发...居然拿了30分(rp--)...
下面有一些是自己/小伙伴YY的想法...有一些是题解...先放官方题解...
就不放题面了...复制过来效果很神奇...
分析:
这个你脑补一下,划分成的长度一定是1~n的某个全排列,然后算一算,发现能够组合出来的长度只有$\frac{n(n+1)}{2}$种,如果两两不同,那么就需要每一种长度都只被计算一次,然后就会发现,如果n>=3是做不到这一点的...详细证明请见题解...
代码:
#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
//by NeighThorn
using namespace std; int n,cas; signed main(void){
scanf("%d",&cas);
while(cas--){
scanf("%d",&n);
if(n>3)
puts("-1");
else
puts("1");
}
return 0;
}//Cap ou pas cap. Cap.
#283. 直径拆除鸡
分析:
题解有点长...懒得看了...
这是一个神奇的想法...
我们枚举树高,然后除了最后一层的点,其他全都是三叉的,每一层的根节点前两个儿子都是一条链,第三个儿子递归...大概就是下面这张图...
代码:
#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
//by NeighThorn
using namespace std; int n,m; inline int calc(int dep){
int ans=0,tmp=dep,N=n;
while(tmp)
ans+=N,N-=tmp*2+1,tmp--;
ans+=N;
if(ans>=m){
for(int i=dep,tot=0;i>=1;i--){
int root=tot+1;
tot+=2*i+1;
for(int j=root+1;j<=i+root;j++)
printf("%d %d\n",j==root+1?root:j-1,j);
for(int j=root+i+1;j<=root+i+i;j++)
printf("%d %d\n",j==root+i+1?root:j-1,j);
printf("%d %d\n",root,root+i+i+1);
if(i==1&&tot+1<n){
for(int j=root+i+i+2;j<=n;j++)
printf("%d %d\n",root,j);
}
}
}
return ans;
} signed main(void){
scanf("%d%d",&n,&m);
if(n<=3){
for(int i=2;i<=n;i++)
printf("%d %d\n",1,i);
return 0;
}
for(int i=1;i<=(n-1)/3;i++)
if(calc(i)>=m)
break;
return 0;
}//Cap ou pas cap. Cap.
By NeighThorn
UOJ Goodbye Bingshen的更多相关文章
- uoj Goodbye Jiawu
这次比赛真是太伤我心了. 比(惨)赛(不)结(忍)果(睹) 完挂感言 uoj round 5已经挂了一次了,没想到还要再挂第二次. 这次比赛的期望得分是\(100+100+100+70+10\)的.没 ...
- Goodbye Bingshen
在uoj上打的第二场比赛......还凑合(卧槽C题80分没了QAQ 第一次接触交互题还挺好玩的哈哈 可能是人比较多吧.....rating涨了不少...... 现在我rating正好比lrd高1哈哈 ...
- uoj Goodbye Dingyou Round 题解
2.14 晚上的比赛, 现在改好了四题, 还差提答. 在这补个题解 新年的xor Description 给你 \(n\) , 然后要你构造 \([L, R], L<R\) 使得区间异或和为 \ ...
- uoj#67. 新年的毒瘤(割顶)
#67. 新年的毒瘤 辞旧迎新之际,喜羊羊正在打理羊村的绿化带,然后他发现了一棵长着毒瘤的树. 这个长着毒瘤的树可以用n个结点m 条无向边的无向图表示.这个图中有一些结点被称作是毒瘤结点,即删掉这个结 ...
- 巧克力棒&&新年的巧克力棒
巧克力棒 题目描述 LYK 找到了一根巧克力棒,但是这根巧克力棒太长了,LYK 无法一口吞进去.具体地,这根巧克力棒长为 n,它想将这根巧克力棒折成 n 段长为 1 的巧克力棒,然后慢慢享用.它打算每 ...
- UOJ Contest #50: Goodbye Jihai
比赛传送门:Goodbye Jihai. \(\Huge{\mathbf{再见,己亥.\\你好,庚子!\\祝大家新春快乐!}}\) A. 新年的促销 这题如果直接做的话可能方向会想歪,方向对了其实就是 ...
- 虚拟机上装uoj
前期准备: x64 ubuntu 镜像.vmware.ss账号 注意一定要有64位镜像! ss不是必须的,不过没有的话就等着下载一晚上吧... 首先先装好ubuntu,我装的是ubuntu-16.04 ...
- 【UOJ #35】后缀排序 后缀数组模板
http://uoj.ac/problem/35 以前做后缀数组的题直接粘模板...现在重新写一下模板 注意用来基数排序的数组一定要开到N. #include<cstdio> #inclu ...
- 【UOJ #246】【UER #7】套路
http://uoj.ac/contest/35/problem/246 神奇!我这辈子是想不出这样的算法了. 对区间长度分类讨论:题解很好的~ 我已经弱到爆了,看完题解后还想了一晚上. 题解中&qu ...
随机推荐
- HTML5/CSS3 第三章页面布局
页面布局 1 页面组成 2 布局相关的标签 <div></div> 定义文档中的分区或节 <span></span> 这是一个行内元素,没有任何意义 & ...
- PHP 计算代码运行所占内存和时间
PHP 计算代码运行所占内存和时间 在PHP开发过程中,写出高质量的代码是很重要的,除了代码必须规范之外,性能也是不可忽视的一方面,那么如果检验一段代码是否高效呢,可通过以下一段php代码来粗略检测 ...
- 爬虫之Scarpy.Request
一 .Request 1.request Scarpy中的HTTP请求对象 1.1.Requse的构造 #我们ctrl+左键可以看到Scarpy.Request的代码 class Request(ob ...
- python3 爬取汽车之家所有车型数据操作步骤(更新版)
题记: 互联网上关于使用python3去爬取汽车之家的汽车数据(主要是汽车基本参数,配置参数,颜色参数,内饰参数)的教程已经非常多了,但大体的方案分两种: 1.解析出汽车之家某个车型的网页,然后正则表 ...
- BFS:HDU2054-A==B?(字符串的比较)
A == B ? Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total S ...
- L1-049 天梯赛座位分配 (20 分)
天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情.为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位 ...
- Scrapy框架中选择器的用法【转】
Python爬虫从入门到放弃(十四)之 Scrapy框架中选择器的用法 请给作者点赞 --> 原文链接 Scrapy提取数据有自己的一套机制,被称作选择器(selectors),通过特定的Xpa ...
- 笔记-数据库-redis
笔记-数据库-redis 1. redis简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 stri ...
- Android Kotlin适用小函数
都是一些Android适用的Kotlin小函数. 1.点击空白隐藏键盘 //点击空白隐藏键盘 override fun onTouchEvent(event: MotionEvent): Boolea ...
- TypeError: cannot perform reduce with flexible type
想要解决这个错误,最好先明白numpy数据类型的dtype转换 生成一个浮点数组 a=np.random.random(4) 输出 a array([0.0945377,0.52199916,0.62 ...