299.猜数字游戏
题目链接
class Solution {
public:
string getHint(string secret, string guess) {
ios::sync_with_stdio(0);
cin.tie(0);
int a[10]={0},b[10]={0};
int acnt=0,bcnt=0;
int sl = secret.size();
for(int i = 1; i <= sl;i++){
if(secret[sl-i]==guess[sl-i])acnt++;
else{
a[secret[sl-i]-'0']++;
b[guess[sl-i]-'0']++;
}
}
for(int i=0;i<10;i++)bcnt+=min(a[i],b[i]);
return to_string(acnt)+"A"+to_string(bcnt)+"B";
}
};
303.区域和检索 - 数组不可变
题目链接
差分前缀和
class NumArray {
private:
vector<int>sum;
public:
NumArray(vector<int>& nums) {
ios::sync_with_stdio(0);
cin.tie(0);int flag = 0;
sum.emplace_back(0);
for(int i:nums){
flag += i;
sum.emplace_back(flag);
}
}
int sumRange(int i, int j) {
return sum[j+1]-sum[i];
}
};