草庐IT

c++ - 寻找对的更有效方法

我最近遇到了一个问题,该问题要求找到好的圆对的数量。当通过连接第一个圆上的任意点P1和第二个圆上的P2可以获得给定的距离时,就形成了一对好的圆。我们有N个圆和Q个距离。接下来的N行包含圆心的坐标(X、Y)及其半径R.之后,下一个Q列出了要检查的距离。以下约束适用:2≤N≤1031≤Q≤5⋅105X,Y≤|2⋅105|1≤R≤2⋅1050≤K≤106执行时间必须这里,K是要检查的距离。删除了我的代码,因为它是正在进行的竞赛的一部分我的代码只被部分接受,我花了几个小时试图为这个问题找到一个有效的算法。任何人都可以提供一个有效的方法来解决这个问题,以便解决TLE问题吗?

c++ - 寻找完美四叉树的大小

我需要找到完美四叉树的大小。这意味着我有1个根节点split成4个节点,split成4个节点等。所以高度为1的四叉树的大小为1高度2=尺寸5(1+4)高度3=尺寸21(1+4+16)高度4=尺寸85(1+4+16+64)等..我知道完美二叉树的大小可以通过以下公式找到:size=2^(height+1)-1所以我相信四叉树也存在类似的等式。那是什么? 最佳答案 这是一个geometricseries.所以相关的公式是:S=a*(1-r^n)/(1-r)其中a是第一个值,r是公比,n是项数,^表示“to-the-power-of”。

c++ - 寻找具有下限的最近点......但数据未排序

我有一个vector存储沿一条线到某个引用点的距离。因此,我想要例如距离为700米或最接近该距离的值的索引。我假定vector已排序,并成功使用了lower_bound。问题是在现实生活中,错误时有发生,所以我不能保证我会一直有一个排序的vector,因为例如在存储数据时,用户可能没有遵循该行。如果数据未排序,我如何找到最接近的值? 最佳答案 你不能,因为std::vector是一个序列容器。您必须sort使用排序算法的数据。 关于c++-寻找具有下限的最近点......但数据未排序,我

c++ - 寻找幂的算法,即 n^p

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭10年前。寻找n^p的算法是:unsignedlonglongpower(unsignedn,unsignedp){unsignedlonglongx=1,y=n;while(p>0){if(p&1)x*=y;y*=y;p>>=1;}returnx;}有人能解释一下这个算法背后的逻辑/数学吗?我知道它有效并针对一些测试用例(试运行)进行了计算。我的意思是它是如何工

c++ - 寻找哈希函数/Ordered Int/to/Shuffled Int/

我正在寻找可以将有序整数索引值更改为随机哈希索引的恒定时间算法。如果它是可逆的就好了。我需要每个索引的哈希键都是唯一的。我知道这可以通过在大文件中查找表格来完成。IE。创建一个有序的所有整数集,然后随机打乱它们并以随机顺序写入文件。然后您可以在需要时读回它们。但这需要搜索一个大文件。我想知道是否有一种简单的方法可以使用伪随机生成器来根据需要创建序列?GeneratingshuffledrangeusingaPRNGratherthanshufflinganswer经过erikkallen的线性反馈移位寄存器看起来是正确的事情。我刚刚试过了,但它会产生重复和孔洞。问候大卫·艾伦·芬奇

c++ - 寻找最佳颜色匹配 - 如果没有可用的颜色阴影则拒绝

有没有一种方法可以将由十六进制代码给出的颜色识别为某种颜色的阴影?我想我找到了一种方法,但不确定有多准确-但我如何判断我找到的颜色匹配是否不够好?我需要能够识别特定颜色的颜色匹配-一组固定的颜色(红色、黄色、橙色、蓝色、绿色、棕色、紫色、灰色、黑色、白色)。目前我正在做一个基于距离的配色:从上面的固定颜色列表中给定一个颜色c(我使用十六进制颜色设置它希望在该颜色范围的中间,我不太确定如何获得-现在我正在使用一种看起来“不错”的颜色),以及一个可用颜色列表list,我尝试从列表中找到颜色最接近的索引。intmatchColor(QColorc,QListlist){intbestInde

java - 用最少的计算量寻找素数的算法

假设您要编写一个函数/方法来查找质数,最有效的方法是什么?我认为这将是一个类似这样的测试:半C++代码如下boolprimeTest(intx){//Xisthenumberwe'retestinginttestUpTo=(int)((sqrt(x))+1);for(inti=3;i有人有更好的方法来解决这个问题,而且计算量会更少吗?编辑:稍微更改了代码,两次。我没有考虑使用任何特定语言编写此代码,尽管由于bool这个词,我认为它是基于Java的C++。 最佳答案 我会使用MillerRabintest,对于小于341,550,07

c++ - 在 C++ 中寻找比虚拟继承更好的方法

好的,我有一个有点复杂的C++系统。简而言之,我需要向第三方抽象基类添加一个方法。第三方还提供了大量也需要新功能的派生类。我正在使用一个提供标准Shape接口(interface)以及一些常见形状的库。classShape{public:Shape(position);virtual~Shape();virtualpositionGetPosition()const;virtualvoidSetPosition(position);virtualdoubleGetPerimeter()const=0;private:...};classSquare:publicShape{public

c# - 寻找 C++ 到 WPF/Cocoa 互操作性的跨平台、端到端示例

首先,一些背景:我决定开始一个从头开始设计的新项目,以在多个平台(Windows、iOS、OSX、Linux、Android)上运行。由于我的背景主要是C++,所以我打算使用C++11编写核心功能。也就是说,在每个平台上,我都需要编写一个特定于平台的UI,该UI可以与C++核心进行互操作。我的第一个目标平台是Windows(第二个是iOS)。我会将数据存储在SQLite数据库中,以及将使用WPFDataGrid输入的用户提供的数据(插入行、操作现有数据等)。这是我第一次使用WPF(尽管我使用过Windows窗体),也是我第一次在托管环境中使用C++。我计划将其打造为MVC风格的架构,因

c++ - 在完美图中寻找最大团

一种快速算法,用于查找具有大约100个顶点的完美图中最大团的大小(该图具有奇数圈,至少有1个弦)??有没有比蛮力更简单的方法,因为这是一个完美的图,应该有一个多项式时间解。但是我找不到算法。贪婪着色是否在所有完美图中给出最佳着色?? 最佳答案 100个顶点?噗。使用Cliquer在几秒钟内(可能是几分之一秒)暴力破解它。http://users.tkk.fi/pat/cliquer.html 关于c++-在完美图中寻找最大团,我们在StackOverflow上找到一个类似的问题: