当前位置:网站首页>Spring 2021 daily question [end of week4]

Spring 2021 daily question [end of week4]

2022-06-11 18:00:00 Hui Xiaoge

80. Remove duplicate items from an ordered array II

 Insert picture description here

class Solution {
    
public:
    int removeDuplicates(vector<int>& nums) 
    {
    
        map<int,int>mp;
        vector<int>ans;
        for(int i=0;i<nums.size();i++)
        {
    
            mp[nums[i]]++;
            if(mp[nums[i]]>2) continue;
            ans.push_back(nums[i]);
        }
        nums=ans;
        return nums.size();
    }
};

817. Array weight removal

 Insert picture description here

#include<cstdio>
#include<iostream>
using namespace std;
int hush[1005];
int n,x,ans;
int main(void)
{
    
    cin>>n;
    for(int i=0;i<n;i++) cin>>x,hush[x]?0:(hush[x]++,ans++);
    cout<<ans<<endl;
    return 0;
}

81. Search rotation sort array II

 Insert picture description here

class Solution {
    
public:
    bool search(vector<int>& nums, int target) 
    {
    
        int n=nums.size();
        for(int i=0;i<n;i++)
        {
    
            if(nums[i]==target) return true;
        }
        return false;
    }
};

22. Minimum number of rotation array

 Insert picture description here

class Solution {
    
public:
    int findMin(vector<int>& nums) 
    {
    
        int ans=1e9;
        for(int i=0;i<nums.size();i++) ans=min(ans,nums[i]);
        return (ans==1e9)?-1:ans;
    }
};

153. Look for the minimum value in the rotation sort array

 Insert picture description here

class Solution {
    
public:
    int findMin(vector<int>& nums) 
    {
    
        int ans=1e9;
        for(int i=0;i<nums.size();i++) ans=min(ans,nums[i]);
        return ans;
    }
};

68. 0 To n-1 Missing numbers in

 Insert picture description here

class Solution {
    
public:
    int getMissingNumber(vector<int>& nums) {
    
        if(nums.empty()) return 0;
        
        int l=0,r=nums.size()-1;
        while(l<r)
        {
    
            int mid=l+r+1>>1;
            if(nums[mid]<=mid) l=mid;
            else r=mid-1;
        }
        if(nums[l]==l) l++;
        return l;
    }
};

154. Look for the minimum value in the rotation sort array II

 Insert picture description here
 Insert picture description here

class Solution {
    
public:
    int findMin(vector<int>& nums) 
    {
    
        int ans=1e9;
        for(int i=0;i<nums.size();i++) ans=min(ans,nums[i]);
        return ans;
    }
};

69. An element in an array whose value and subscript are equal

 Insert picture description here

class Solution {
    
public:
    int getNumberSameAsIndex(vector<int>& nums) 
    {
    
        for(int i=0;i<nums.size();i++) if(nums[i]==i) return i;
        return -1;
    }
};

263. Ugly number

 Insert picture description here

class Solution {
    
public:
    bool isUgly(int n) 
    {
    
        if(n==0) return false;
        while(n%2==0) n/=2;
        while(n%3==0) n/=3;
        while(n%5==0) n/=5;
        return n==1;
    }
};

62. Ugly number

 Insert picture description here

class Solution {
    
public:
    set<long long int>st;
    void solve(int i,int j,int k)
    {
    
        long long int sum=1;
        for(int z=1;z<=i&&sum<1e17;z++) sum*=2;
        for(int z=1;z<=j&&sum<1e17;z++) sum*=3;
        for(int z=1;z<=k&&sum<1e17;z++) sum*=5;
        st.insert(sum);
    }
    int getUglyNumber(int n) 
    {
    
        int cnt=0;
        for(int i=0;i<=50;i++)
            for(int j=0;j<=20;j++)
                for(int k=0;k<=20;k++)
                    solve(i,j,k);
        for(auto i=st.begin();i!=st.end();i++) 
        {
    
            cnt++;
            if(cnt==n) return *i;
        }
    }
};
原网站

版权声明
本文为[Hui Xiaoge]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/03/202203011854575546.html