#include #include int main() { // Anzahl an Aktien einlesen int num_stocks; scanf("%d", &num_stocks); if (num_stocks < 1) { printf("Anzahl der Aktienpositionen muss mindestens 1 sein.\n"); return 1; } // Werte einlesen int *prices = (int *)malloc(num_stocks * sizeof(int)); for (int i = 0; i < num_stocks; i++) scanf("%d", &(prices[i])); // Anzahl an Abfragen einlesen int num_queries; scanf("%d", &num_queries); if (num_queries < 1) { printf("Anzahl der Abfragen muss mindestens 1 sein.\n"); return 1; } // Abfragen einlesen int *queries = (int *)malloc(num_queries * 2 * sizeof(int)); for (int i = 0; i < num_queries; i++) { scanf("%d %d", &(queries[i * 2]), &(queries[i * 2 + 1])); if (queries[i * 2] > queries[i * 2 + 1]) { printf("Ungültige Abfrage\n"); return 1; } } // Alle Abfragen berechnen long total_sum = 0; for (int i = 0; i < num_queries; i++) { long query_sum = 0; for (int price_index = queries[i * 2]; price_index <= queries[i * 2 + 1]; price_index++) query_sum += prices[price_index]; total_sum += query_sum; } // Ergebnis ausgeben printf("Gesamtsumme: %ld\n", total_sum); free(queries); free(prices); return 0; }