首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

【OpenJ_POJ C16D】Extracurricular Sports(构造,找规律)

题目 求n个互不相同的数,满足其和为其lcm。 我们把lcm看成一个线段,分割成长度不同的n份。 当然分法有很多,我们只需要构造一个好想好写的。 先分成两个二分之一,取其中一个二分之一再分成1/3和2/3,接下来每次取1/3的分成1/3和2/3。 1 1/2 1/2 1/2 2/6 1/6 1/2 2/6 2/18 1/18 最短的是1/18的这份,我们让它为1。则可算出其它的长度:9 6 2 1。 所以1,2为最短的两个,接下来每个数就是前面的数的和的两倍,最后一个数是前面所有的数之和。 再长一点:1 2 6 18 54 81 可以发现,前面两个数是1,2,接下来是前面一个数的3倍,最后一个数是3的n-2次方。 令$a[0]=1,a[i]=2*3^{i-1}$,答案就是a[0]到a[n-2],a[n-1]/2。 用java的大整数类写起来比较精简。

02

Android开发笔记(一百五十五)利用GL10描绘点、线、面

上一篇文章介绍了GL10的常用方法,包括如何设置颜色、如何指定坐标系、如何调整镜头参数、如何挪动观测方位等等,不过这些方法只是绘图前的准备工作,真正描绘点、线、面的制图工作并未涉及,那么本文就来谈谈如何利用GL10进行实际的三维绘图操作。 首先在三维坐标系中,每个点都有x、y、z三个方向上的坐标值,这样需要三个浮点数来表示一个点。然后一个面又至少由三个点组成,例如三个点可以构成一个三角形,而四个点可以构成一个四边形。于是OpenGL使用浮点数组表达一块平面区域的时候,数组大小=该面的顶点个数*3,也就是说,每三个浮点数用来指定一个顶点的x、y、z三轴坐标,所以总共需要三倍于顶点数量的浮点数才能表示这些顶点构成的平面。以下举个定义四边形的浮点数组例子:

03
领券