7.13学习

1.第一题,这道题绝对是一个脑筋急转弯hhh
在这里插入图片描述代码如下:

class Solution:
    def maxCount(self, m: int, n: int, ops: List[List[int]]) -> int:
        M=[[0]*m]*n
        i_min=m
        j_min=n
        for demo in ops:
            i=demo[0]
            j=demo[1]
            if i<i_min:
                i_min=i
            if j<j_min:
                j_min=j
        return i_min*j_min

2.第二题
在这里插入图片描述
有两层循环的垃圾,代码如下:

class Solution:
    def findRestaurant(self, list1: List[str], list2: List[str]) -> List[str]:
        res=[]
        len1=len(list1)
        len2=len(list2)
        min_index=len1+len2
        for i in range(len1):
            for j in range(len2):
                if list1[i]==list2[j] and i+j<=min_index:
                    min_index=i+j
                    res.append(list1[i])
        return res

3.第三题
在这里插入图片描述
我的暴力解法,但是超时了没办法,代码如下,利用除留取余法转换为二进制:

class Solution:
    def findIntegers(self, num: int) -> int:
        def zero(n):
            demo=[]
            while n:
                yushu=n%2
                n=n//2
                demo.append(yushu)
            a=reversed(demo)
            nums=0
            for i in a:
                if i==1:
                    nums+=1
                else:nums=0
                if nums>1:
                    return False
            return True
        res=0
        for i in range(num+1):
            if zero(i):
                res+=1
        return res

利用结论,看评论有人解释说没有连续1的二进制数的个数符合斐波拉契数列,代码如下:

在这里插入代码片

算了不贴了,看了半天脑壳痛。
4.第四题:
在这里插入图片描述
我还是喜欢暴力,代码如下:

class Solution:
    def canPlaceFlowers(self, flowerbed: List[int], n: int) -> bool:
        res=0
        if len(flowerbed)==1 and flowerbed[0]==0:
            return True
        for i in range(len(flowerbed)-1):
            if i==0 and flowerbed[i]==0 and flowerbed[i+1]==0:
                res+=1
                flowerbed[i]=1
            elif i==len(flowerbed)-2 and flowerbed[i]==0 and flowerbed[i+1]==0:
                flowerbed[i+1]=1
                res+=1
            elif flowerbed[i-1]==0 and flowerbed[i+1]==0 and flowerbed[i]==0:
                flowerbed[i]=1
                res+=1
        if res>=n:
            return True
        else:return False

5.第五题:
在这里插入图片描述
这道题真是蛮蠢的,mysql代码如下:

select id,
max(if(month='Jan',revenue,null)) Jan_Revenue,
max(if(month='Feb',revenue,null)) Feb_Revenue,
max(if(month='Mar',revenue,null)) Mar_Revenue,
max(if(month='Apr',revenue,null)) Apr_Revenue,
max(if(month='May',revenue,null)) May_Revenue,
max(if(month='Jun',revenue,null)) Jun_Revenue,
max(if(month='Jul',revenue,null)) Jul_Revenue,
max(if(month='Aug',revenue,null)) Aug_Revenue,
max(if(month='Sep',revenue,null)) Sep_Revenue,
max(if(month='Oct',revenue,null)) Oct_Revenue,
max(if(month='Nov',revenue,null)) Nov_Revenue,
max(if(month='Dec',revenue,null)) Dec_Revenue
from Department group by id
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值