2057. 值相等的最小索引
給你一個下標從 0 開始的整數數組 nums ,返回 nums 中滿足 i mod 10 == nums[i] 的最小下標 i ;如果不存在這樣的下標,返回 -1 。
x mod y 表示 x 除以 y 的 余數 。
示例 1:輸入:nums = [0,1,2]
輸出:0
解釋:
i=0: 0 mod 10 = 0 == nums[0].
i=1: 1 mod 10 = 1 == nums[1].
i=2: 2 mod 10 = 2 == nums[2].
所有下標都滿足 i mod 10 == nums[i] ,所以返回最小下標 0示例 2:輸入:nums = [4,3,2,1]
輸出:2
解釋:
i=0: 0 mod 10 = 0 != nums[0].
i=1: 1 mod 10 = 1 != nums[1].
i=2: 2 mod 10 = 2 == nums[2].
i=3: 3 mod 10 = 3 != nums[3].
2 唯一一個滿足 i mod 10 == nums[i] 的下標示例 3:輸入:nums = [1,2,3,4,5,6,7,8,9,0]
輸出:-1
解釋:不存在滿足 i mod 10 == nums[i] 的下標示例 4:輸入:nums = [2,1,3,5,2]
輸出:1
解釋:1 是唯一一個滿足 i mod 10 == nums[i] 的下標
提示:
- 1 <= nums.length <= 100
- 0 <= nums[i] <= 9
解題思路
從頭到尾遍歷所有元素,找出第一個滿足 i mod 10 == nums[i] 的最小下標 i ,不存在的話返回-1.
代碼
class Solution {
public:int smallestEqual(vector<int>& nums) {for (int i = 0; i < nums.size(); ++i) {if (i % 10 == nums[i])return i;}return -1;}
};