Problem - D - Codeforces

题意是给你一个无限大的六边形方格,需要你添加直线,问给你一个n,至少划分出n个等边三角形至少需要多少条直线(三角形内部不可以有线)

注释和解释都在代码里了~

#pragma GCC optimize(1)
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#define IOS ios::sync_with_stdio(false), cin.tie(0);
#include<iostream>
#include<map>
#include<set>
#include<cstdio>
#include<cstring>
#include<vector>
#include<algorithm>
#include<cmath>
#include<queue>
#include<deque>
using namespace std;
typedef long long ll;
typedef pair<int,int> PAII;
const int N=2e6+10,M=5050,INF=0x3f3f3f3f,mod=1e9+7;
ll f[N];
int main(){//IOS; int T;//T=1;cin>>T;int n=40000;f[2]=2,f[3]=6;//一条线是0 int cnt[]={1,1,1};//当前都是一条 for(int i=4;i<=n;i++){int t=i%3;//当前需要划线的种类f[i]=f[i-1];//从上一个过程转移过来for(int j=0;j<3;j++){if(j!=t)//同种线只可以产生平行线 只需要找到不同线的数量f[i]+=2*cnt[j];//在一种类型的情况下 其他类型的数量*2是产生三角形的数量 } cnt[t]++;} while(T--){   int x;cin>>x;cout<<lower_bound(f+1,f+n+1,x)-f<<"\n";}return 0;
}
/*
令f[i]为i条直线最多可以划分出来多少个三角形
根据贪心 划分的种类分别是 0 1 2,三种要不一样轮流着来
给出n,最后二分查找
顺序是;
1 2 3 4
0 2 6...
那如果查询n==1
查找大于等于这个数的那就是下标就是2
下标i对应着直线的数量 */

D. Very Suspicious相关推荐

  1. Suspicious Package for Mac(pkg程序查看工具)

    想要快速的查看PKG程序内的信息及应用就来试试Suspicious Package For Mac吧.它是一款Mac平台上的查看 PKG 程序包内信息的应用,Suspicious Package Ma ...

  2. [论文阅读] (09)SP2019 HOLMES Real-time APT Detection through Correlation of Suspicious Information Flow

    <娜璋带你读论文>系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢.由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学 ...

  3. 南邮 OJ 1567 Suspicious Stocks

    Suspicious Stocks 时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte 总提交 : 26            ...

  4. Suspicious size this will make the view invisible, probably intended for layout_width

    布局中Suspicious size: this will make the view invisible, probably intended for layout_width的错误 <Lin ...

  5. Suspicious method call; should probably call draw rather than onDraw

    今天在写一个文本阅读器时,出现以下错误: Suspicious method call; should probably call "draw" rather than " ...

  6. 基于CSI数据实现Suspicious object detection

    1.介绍 Detection of Suspicious Objects Concealed by Walking Pedestrians Using WiFi提出了一种基于WiFi信道状态信息(CS ...

  7. No suspicious code found. 1 files processed in 'File '

    来源 在IDEA开发工具中,有一个Alibaba Java Coding Guidelines插件,此插件可以检测我们的代码是否符合阿里编码规约. 出现代表了什么 当你右键进行编码规约扫描后,若符合阿 ...

  8. nginx启动报错has suspicious symbols

    nginx启动时报错:server name "http://ylngsmart.com/" has suspicious symbols in D:\program\nginx- ...

  9. Nacos集群(三节点)部署后总是出现某个节点或者某两个节点DOWN或者变成SUSPICIOUS

    近期在公司机器上部署了三个节点的nacos集群服务用于几个小型微服务的注册配置中心,并使用了Nginx简单代理了 一下(原来是单节点,但是有一天机器闪存故障停机修理了......),随即简单研究了下集 ...

  10. nginx server name “*“ has suspicious symbols

    server name "*" has suspicious symbols nginx要求 server_name 不能包含"/" 错误:server_nam ...

最新文章

  1. php addall,ThinkPHP3.2框架使用addAll()批量插入数据的方法
  2. OSChina 周一乱弹 —— 抱着漂亮袜子就亲了一口
  3. osg 倾斜数据纹理_高科技构筑逼真效果——无人机倾斜摄影技术在实景三维建模的应用及展望...
  4. 论java中可变参数
  5. JAVA中向量类Vector
  6. 找出数组中从未出现的最小正整数java实现
  7. 使用util.js处理列表
  8. 十五、新人成才之路《做人七项原则 做一个有爱心的人》
  9. 图像语义分割(10)-DeepLabV3+: 用于图像语义分割的带有空洞可分离卷积的编解码结构
  10. log4cxx OutputDebugString DebugView dbgview
  11. 《UnityAPI.MovieTexture影片纹理》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+MovieTexture+audioClip+立钻哥哥++OK++)
  12. Startup.s文件
  13. 2007年中国网络游戏市场分析及投资咨询报告(上下卷)
  14. 电脑通话有回音解决方案 使用电脑通话时有回音(可以听到对方电脑中自己说话的声音)电脑通话回音解决方案【以Thinkpad Win10系统为例】
  15. logstash 导入数据,查看每秒导入的数据量及已导入数量和已导入时间
  16. ThinkPad笔记本如何重装系统
  17. 3dmax中格式批量互转obj批量转fbx等等
  18. 【CQF Math Class 数学笔记】
  19. 前端开发基础知识汇总
  20. github语法使用

热门文章

  1. 游戏小程序源码 一起来找茬
  2. 阿里巴巴稳定性保障体系
  3. 商城后台系统商品模型(类型)新增接口开发
  4. 关系型数据库迁移达梦数据库
  5. 《Linux C编程从入门到精通》——1.3 Shell的使用基础
  6. CE修改器下载、安装和汉化(必会版)
  7. MD500E源码和代码解析文档 代码包含了同步机FOC控制算法、电阻、电感、磁链、反电动势
  8. centos8安装tomcat
  9. 无线传感网络的基本结构
  10. 继QQ挂机死亡后,网游挂机也将死亡——5小时之后白打