# Greedy# Basic Math

c005 - 10300 - Ecological Premium

🔗 前往 ZeroJudge 原題

題目描述

題目要求計算多個農場的生態獎金總額。對於每個農場,獎金的計算方式是:農場面積除以動物數量,再乘以農場的環保等級,最後將結果乘以動物數量。需要對所有農場的獎金進行加總。

解題思路

題目描述的計算公式可以直接套用。對於每組測試資料,遍歷每個農場,計算其獎金,並將獎金累加到總獎金中。由於輸入的數字範圍不大,可以使用 long long int 來避免溢位。程式碼直接按照公式進行計算,沒有使用複雜的演算法或資料結構。

複雜度分析

  • 時間複雜度: O(n*f),其中 n 是測試資料組數,f 是每組測試資料中的農場數量。
  • 空間複雜度: O(1),程式碼只使用了常數級別的額外空間。

程式碼

#include <stdio.h>
int main(){
	int n;
	long long int sum,f,c;
	scanf("%d",&n);
	while(scanf("%d",&n)>0){
		for(sum=0;n>0;n--){
			scanf("%lld%d%lld",&f,&c,&c);
			sum+=f*c;
		}
		printf("%lld\n",sum);
	}	
}

Discussion