小编def*_*t__的帖子

找到堆栈的最大高度,使其对于所有三个堆栈都相等

我们有三叠圆柱体,每个圆柱体的直径相同,但它们的高度可能不同。我们可以通过多次移除和丢弃其最顶部的圆柱体来更改堆栈的高度。

找出堆栈的最大可能高度,使所有堆栈的高度完全相同。这意味着您必须从三个堆栈中的零个或多个顶部移除零个或多个圆柱体,直到它们都具有相同的高度,然后返回高度。

例子:

h1 = [3, 2, 1, 1, 1] //remove 3 , it will make height 5 i.e (1+1+1+2=5);

h2 = [4, 3, 2]       //remove [4] it will make height 5;

h3 = [1, 1, 4, 1]    //remove [1,1] it will make height 5;
Run Code Online (Sandbox Code Playgroud)

它将返回 5 作为答案。我的方法我计算sum1stack1 sum2forstack2sum3forstack 3然后greatest sum通过用该topmost element堆栈的 减去它开始减少值&&popping it out然后迭代使用while(sum1!=sum2 || sum2!=sum3 ||sum3!sum1). 但是我的 while 循环最多成功执行了 2 …

c++ algorithm stack vector data-structures

5
推荐指数
1
解决办法
84
查看次数

给定一个数组,找出它可以除以或除以数组剩余元素的元素数

Input Array: int A={2,3,4,5,6} , array is not always sorted.

output Array:{2,1,1,0,2}
Run Code Online (Sandbox Code Playgroud)
  • 因为我们可以看到A[0]可以除以 4 & 6 所以它有输出 2。
  • A[1] 只能除以 6,它有输出 1。
  • A[2] 除以 2,所以输出 1。
  • A[3] 无法进行除法或被除法,因此输出为 0。
  • A[4] 正被 2 & 3 除,所以输出 2。

我能够使用时间复杂度为 o(n*n) 的蛮力方法来解决它。什么可能是解决它的最有效方法。谢谢你。我的代码:

    #include<iostream>
    #include<vector>
    using namespace std;
    //Function to return output vector
    vector<int>solve(vector<int> &A) {
        vector<int>v;
        for(int i=0;i<A.size();i++){
            int count=0;
            for(int j=0;j<A.size();j++){
                if(i!=j){
                    if(A[j]%A[i]==0 || A[i]%A[j]==0){
                        count++;
                    }
                }
            }
            v.push_back(count);
        }
        return v;
    }
    
    int main(){
        vector<int>v={2,3,4,5,6};
        vector<int>s;
        s=solve(v);
    //printing …
Run Code Online (Sandbox Code Playgroud)

c++ algorithm vector dynamic-programming data-structures

5
推荐指数
1
解决办法
109
查看次数

MySQL 到 MongoDB 数据迁移

我们知道MongoDB有两种对关系/实体之间的关系进行建模的方式,即嵌入引用参见这里的区别)。假设我们有一个USER数据库,其中 mySQL 中有两个表,分别名为useraddress。嵌入式 MongoDB 文档可能如下所示:

{
  "_id": 1,
  "name": "Ashley Peacock",
  "addresses": [
    {
      "address_line_1": "10 Downing Street",
      "address_line_2": "Westminster",
      "city": "London",
      "postal_code": "SW1A 2AA"
    },
    {
      "address_line_1": "221B Baker Street",
      "address_line_2": "Marylebone",
      "city": "London",
      "postal_code": "NW1 6XE"
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

而在引用关系中,2 个 SQL 表将在 MongoDB 中生成 2 个集合,可以通过此方法使用pymongo.

如何使用python直接将MySQL数据迁移为嵌入文档?

关于伪代码和算法性能的见解将非常有用。我想到的是views通过在 MySQL 中执行来进行创建joins。但在这种情况下,我们将不会在父文档中拥有子文档的结构。

python mysql data-migration mongodb pymongo

5
推荐指数
1
解决办法
939
查看次数

仅显示与 HTML 中单击的按钮相关的内容

我有三个 HTML 按钮,orders以及productssupplier。我希望当用户单击orders订单时显示,当用户单击时products显示产品,以及单击时显示供应商的名称。

function changedata(parameter){
    if(parameter==0){
        document.getElementById('myorders').style.fontSize="25px";
    }
    else if(parameter==1){
        document.getElementById('myproducts').style.fontSize="25px";
    }
    else{
        document.getElementById('mysupplier').style.fontSize="25px";
    }
}
Run Code Online (Sandbox Code Playgroud)
<button class="button" onclick="changedata(0)">ORDERS</button>
<button class="button" onclick="changedata(1)">PRODUCTS</button>
<button class="button" onclick="changedata(2)">SUPPLIER</button>
<div id="myorders">
    <p>Laptop, Earphone</p>
</div>
<div id="myproducts">
    <p>Earphone, smart watch</p>
</div>
<div id="mysupplier">
    <p>Amazon, E-kart</p>
</div>
Run Code Online (Sandbox Code Playgroud)

但它不会隐藏数据并满足我的需求,我是网络开发的初学者,正在寻找仅在按下相应按钮时才显示数据的帮助。

html javascript button

5
推荐指数
1
解决办法
8910
查看次数

质数和,虽然不是很容易

给定一个数n和整数k,检查 k 个素数的和是否为n

input 13 2
output: yes
explanation: 11+2 equals 13
Run Code Online (Sandbox Code Playgroud)

由于 k 被假定为任何一般整数,我不知道如何解决它。我想通过创建所有质数的集合并寻找 k 数来解决它,但即使 k 小到 5,我们也必须运行 4 到 5 次循环才能做到这一点。如何解决此类问题,请寻求帮助,谢谢。我尝试初始代码为:

#include<iostream>
#include<unordered_set>
#include<vector>
using namespace std;
bool is_prime(int n){
    bool flag =true;
    for(int i=2;i<n;i++){
        if(n%i==0 && n!=i){
            flag=false;
            break;
        }
    }
    if(flag){
        return true;
    }
    return false;
}
int main(){
    int n;cin>>n;
    int k;cin>>k;
    unordered_set<int>s;
    for(int i=2;i<n;i++){
        if(is_prime(i)){
            s.insert(i);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c++ algorithm primes dynamic-programming

1
推荐指数
1
解决办法
107
查看次数