0%

第319场周赛

比赛地址

比赛说明

本场竞赛由「蔚来 & 力扣」联合主办

【工作机会奖励】

  • 排名第 1 ~ 300 名的参赛者可获「 NIO 蔚来」简历内推机会。

【实物奖励】

  • 排名第 1 名的参赛者可获 NIO 蔚来 ES8 - 1:18 合金车模(天蓝)x 1
  • 排名第 2 名的参赛者可获 NIO 蔚来 ES6 - 1:18 合金车模(星云紫)x 1
  • 排名第 3 ~ 4 名的参赛者可获 NIO 蔚来Blue Sky 保温杯(蓝绿)x 1
  • 排名第 5 ~ 10 名的参赛者可获 NIO 蔚来 NIOLIFE环保软木笔 5支装 x 1
  • 排名第 166、266、366、466、566、666 名的参赛者可获 NIO 蔚来的纪念礼品 x 1
题目列表
字符串中的最大奇数

题目描述:

给你一个四舍五入到两位小数的非负浮点数 celsius 来表示温度,以 摄氏度(Celsius)为单位。

你需要将摄氏度转换为 开氏度(Kelvin)华氏度(Fahrenheit),并以数组 ans = [kelvin, fahrenheit] 的形式返回结果。

返回数组 ans 。与实际答案误差不超过 $10^{-5}$ 的会视为正确答案。

注意:

  • 开氏度=摄氏度+273.15
  • 华氏度=摄氏度*1.80+32.00

示例1:

1
2
3
输入:celsius = 36.50
输出:[309.65000,97.70000]
解释:36.50 摄氏度:转换为开氏度是 309.65 ,转换为华氏度是 97.70 。

示例2:

1
2
3
输入:celsius = 122.11
输出:[395.26000,251.79800]
解释:122.11 摄氏度:转换为开氏度是 395.26 ,转换为华氏度是 251.798 。

提示:

  • 0<=celsius<=1000

思路:

计算公式得到的结果小数点后位数肯定小于5,所以直接计算后返回即可。

代码:

1
2
3
4
5
6
7
8
class Solution {
public double[] convertTemperature(double celsius) {
double[] ans=new double[2];
ans[0]=celsius+273.15;
ans[1]=celsius*1.80+32.00;
return ans;
}
}
最小公倍数为K的子数组数目

题目描述:

给你一个整数数组 nums 和一个整数 k ,请你统计并返回 nums子数组 中满足 元素最小公倍数为 k 的子数组数目。

子数组 是数组中一个连续非空的元素序列。

数组的最小公倍数 是可被所有数组元素整除的最小正整数。

示例1:

1
2
3
4
5
6
7
输入:nums = [3,6,2,7,1], k = 6
输出:4
解释:以 6 为最小公倍数的子数组是:
- [3,6,2,7,1]
- [3,6,2,7,1]
- [3,6,2,7,1]
- [3,6,2,7,1]

示例2:

1
2
3
输入:nums = [3], k = 2
输出:0
解释:不存在以 2 为最小公倍数的子数组。

提示:

  • 1 <= nums.length <= 1000
  • 1 <= nums[i], k <= 1000

思路:

这应该是道比较经典的动态规划题目吧,之前遇到过类似的还未进行总结

dp[i]表示前i个元素中满足条件的子数组数目,最后返回dp[nums.length],关键是需要找出子问题之间的关系

------------- THE END! THANKS! -------------