Wie verteile ich die Zahlen 1-100 (einschließlich) genau auf eine gewichtete Liste mit einer Länge von <= 100?C++

Programme in C++. Entwicklerforum
Guest
 Wie verteile ich die Zahlen 1-100 (einschließlich) genau auf eine gewichtete Liste mit einer Länge von <= 100?

Post by Guest »

Ich habe eine Liste mit Artikeln, jeder Artikel hat ein Gewicht;

Code: Select all

std::vector weights{0.5, 2, 5};
Diese Liste ist höchstens 100 Elemente lang und mindestens 2 Elemente lang.
Ich möchte die ganzen Zahlen 1-100 umgekehrt proportional verteilen (einschließlich) in dieser Liste, sodass das niedrigste Gewicht den größten Bereich erhält.
Dieser Code bringt mich nahe, aber die Bereiche werden nicht umgekehrt:

Code: Select all

    #include 
#include 
#include 

void distributeNumbers(const std::vector& numbers) {
float total = 0;
for (float num : numbers) {
total += num;
}

int start = 1;
int end = 100;
std::cout

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post