今天早上来的时候老师就给我们扔了一个线段树分治的课件告诉我们自己研究,,,然后发现网上资料少得可怜完全不知道所谓的线段树分治是什么,,,研究了一天结果并没有什么结果,,,例题也完全看不懂最后搞了一天,,,

今天就水了一道题,bzoj1263

结论:一个数拆成若干个数之和,使这些数的和最大,这个数应该拆成尽可能多的3,,,

剩下的就是一个压位高精度的板子了,,,

#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int n,a[5005],top=1,numl;
int main()
{scanf("%d",&n);if(n%3==0){a[1]=1;}else if(n%3==1){n-=4;a[1]=4;}else{n-=2;a[1]=2;}n/=3;while(n--){for(int i=1;i<=top;i++){a[i]*=3;}for(int i=1;i<=top;i++){a[i+1]+=a[i]/10000;a[i]%=10000;}while(a[top+1])top++;}int x=a[top];while(x){x/=10;numl++;}printf("%d\n",numl+(top-1)*4);if(numl+(top-1)*4<=100){printf("%d",a[top--]);for(int i=top;i;i--){if(a[i]<=10)printf("000%d",a[i]);else if(a[i]<=100)printf("00%d",a[i]);else if(a[i]<=1000)printf("0%d",a[i]);else printf("%d",a[i]);}}else {numl=100-numl;printf("%d",a[top--]);for(numl;numl>4;numl-=4){if(a[top]<=10)printf("000%d",a[top]);else if(a[top]<=100)printf("00%d",a[top]);else if(a[top]<=1000)printf("0%d",a[top]);else printf("%d",a[top]);top--;}if(numl==1)printf("%d",a[top]/1000);else if(numl==2){int x=a[top]/100;if(x<=10)printf("0%d",x);else printf("%d",x);}else if(numl==3){int x=a[top]/10;if(x<=10)printf("00%d",x);else if(x<=100)printf("0%d",x);else printf("%d",x);}else{if(a[top]<=10)printf("000%d",a[top]);else if(a[top]<=100)printf("00%d",a[top]);else if(a[top]<=1000)printf("0%d",a[top]);else printf("%d",a[top]);}}return 0;
}

2018.1.5学习笔记相关推荐

  1. 2018/8/05--OpenGL学习笔记(七)Light Caster/Multiple Light

    开篇的话:接着赶笔记,这篇写完正好回学校开始学习新的内容了. 投光物 将光投射(Cast)到物体的光源叫做投光物(Light Caster). 平行光(Directional Light) (我们通常 ...

  2. 【2018.05.04学习笔记】【linux基础知识10.1-10.5】

    2019独角兽企业重金招聘Python工程师标准>>> 10.1 使用w查看系统负载 w命令:查看cpu负载情况 [root@lgs-01 ~]# w11:20:20 up 1 mi ...

  3. 【2018.05.07学习笔记】【linux基础知识10.6-10.10】

    2019独角兽企业重金招聘Python工程师标准>>> 10.6 监控io性能 iostat命令:监控磁盘详细io信息.安装sysstat包得到. 当你用vmstat命令查看,b列或 ...

  4. linux高级的脚本,【2018.07.23学习笔记】【linux高级知识 Shell脚本编程练习】

    1.编写shell脚本,计算1-100的和: #!/bin/bash sum=0 for i in `seq 1 100` do sum=$[$sum+$i] done echo $sum 2.编写s ...

  5. 【2018.06.21学习笔记】【linux高级知识 14.1-14.3】

    2019独角兽企业重金招聘Python工程师标准>>> 14.1 NFS介绍 NFS服务全称是NetWork File System:网络文件系统,最早有sun公司开发的,4.0版本 ...

  6. 【2018.04.24学习笔记】【linux基础知识8.10-8.13】

    2019独角兽企业重金招聘Python工程师标准>>> 8.10 shell特殊符号cut命令 shell中的特殊符号: 1.* 代表任意n个字符,包括0个 2.? 代表任意单个字符 ...

  7. 2018.7.8学习笔记

    剑指Offer P62 面试题7:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8} ...

  8. 2018.7.18学习笔记

    burp实现弱密码破解 1.先打开你的burpsuit,浏览器设置为代理服务器(代理:127.0.0.1,端口:8080) 2.在网上随意找到一个网站,随意输入账号和密码,点击登录 3.burp抓包成 ...

  9. 识别和追踪主题层次的影响力者(来自2018 Machine Learning 论文学习笔记)

    本文作者:合肥工业大学 管理学院 钱洋 email:1563178220@qq.com . 以下内容是个人的论文阅读笔记,内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 文章目录 论文来源 论 ...

最新文章

  1. 剑走偏锋——用css制作一个三角形箭头
  2. Web GIS离线解决方案
  3. String与Date转换
  4. C++ Opengl绘制3D源码
  5. Unity MMORPG游戏优化经验分享
  6. Gateway网关-网关作用介绍
  7. 你的计算机usb管理策略,您的计算机已经实施了USB存储设备管理策略,系统发现你使用了USB存储设备,该设备已被阻止,如有疑问请与...
  8. Linux学习总结(32)——Shell脚本高效编写技巧
  9. 逆天闪存设备 居然能将数据保存至少百年
  10. 403. Frog Jump
  11. 如何拆分PDF文件?来看这两种方法
  12. d3.js-V3制作简单的飞线图
  13. 潘金莲改变了历史吗 - PostgreSQL舆情事件分析应用
  14. 读取NTFS的USN(获取文件的历史操作记录,即使这个文件已被删除)
  15. DATABASE SYSTEM CONCEPTS
  16. 2020第三届江西省高校网络安全技能大赛 线下赛 CTFAWD Writeup
  17. 将多个excel合并到同一个Excel中的多个sheet页,并且以原表名命名sheet页(Office)
  18. android数据库三个方法有哪些,如何将Android数据库操作通用化(二)
  19. 前端开发:Vue报错Computed property “show“ was assigned to but it has no setter的解决方法
  20. wordpress最佳架构_2018年21个最佳材料设计WordPress主题

热门文章

  1. 临床疾病概要名词解释
  2. Babel配置中的presets、plugins、各个阶段stage的含义
  3. B站财报​:亏钱,我们是认真的
  4. 常用的iOS开发工具推荐
  5. Linux 中给 docker 配置镜像加速
  6. 类似抠图,抠出兰博基尼。 使用蒙版(3hopencv)
  7. 如何在Mac上使用Kigo Netflix Video Downloader从Netflix 下载视频?
  8. CodeForces - 669E ​​​​​​​ Little Artem and Time Machine (cdq分治)
  9. java毕业设计流浪动物救助公益平台源码+lw文档+mybatis+系统+mysql数据库+调试
  10. 2837xd代码生成模块学习(2)——ADC、ePWM模块、Timer0