给你一个四舍五入到两位小数的非负浮点数 celsius
来表示温度,以 摄氏度(Celsius)为单位。
你需要将摄氏度转换为 开氏度(Kelvin)和 华氏度(Fahrenheit),并以数组 ans = [kelvin, fahrenheit]
的形式返回结果。
返回数组 ans
。与实际答案误差不超过 10-5
的会视为正确答案。
注意:
开氏度 = 摄氏度 + 273.15
华氏度 = 摄氏度 * 1.80 + 32.00
示例 1 :
输入:celsius = 36.50 输出:[309.65000,97.70000] 解释:36.50 摄氏度:转换为开氏度是 309.65 ,转换为华氏度是 97.70 。
示例 2 :
输入:celsius = 122.11 输出:[395.26000,251.79800] 解释:122.11 摄氏度:转换为开氏度是 395.26 ,转换为华氏度是 251.798 。
提示:
0 <= celsius <= 1000
方法一:模拟
直接根据题意模拟即可。
时间复杂度
class Solution:
def convertTemperature(self, celsius: float) -> List[float]:
return [celsius + 273.15, celsius * 1.8 + 32]
class Solution {
public double[] convertTemperature(double celsius) {
return new double[] {celsius + 273.15, celsius * 1.8 + 32};
}
}
class Solution {
public:
vector<double> convertTemperature(double celsius) {
return {celsius + 273.15, celsius * 1.8 + 32};
}
};
func convertTemperature(celsius float64) []float64 {
return []float64{celsius + 273.15, celsius*1.8 + 32}
}
function convertTemperature(celsius: number): number[] {
return [celsius + 273.15, celsius * 1.8 + 32];
}
impl Solution {
pub fn convert_temperature(celsius: f64) -> Vec<f64> {
vec![celsius + 273.15, celsius * 1.8 + 32.0]
}
}
/**
* Note: The returned array must be malloced, assume caller calls free().
*/
double *convertTemperature(double celsius, int *returnSize) {
double *ans = malloc(sizeof(double) * 2);
ans[0] = celsius + 273.15;
ans[1] = celsius * 1.8 + 32;
*returnSize = 2;
return ans;
}