day01

第一题

https://leetcode.cn/problems/game-play-analysis-i/submissions/632977238/

代码

复制代码
# Write your MySQL query statement below

SELECT t1.player_id, t1.event_date AS first_login

FROM Activity t1

JOIN (

    SELECT player_id, MIN(event_date) AS min_date

    FROM Activity

    GROUP BY player_id

) AS t2 ON t1.player_id = t2.player_id AND t1.event_date = t2.min_date;

第二题

https://leetcode.cn/problems/summary-ranges/?envType=problem-list-v2&envId=array

代码

复制代码
class Solution {

    public List<String> summaryRanges(int[] nums) {

        int cnt = 0;

        List<String> list = new ArrayList<>();

        StringBuilder builder = new StringBuilder();

        for(int i = 0; i < nums.length; i++){

            if(cnt == 0){

                builder.append(nums[i]);

                cnt++;

            } else {

                if(nums[i] - nums[i-1] != 1){

                    if(cnt != 1){

                        builder.append("->");

                        builder.append(nums[i-1]);

                    }

                    list.add(builder.toString());

                    cnt = 0;

                    builder.setLength(0);

                    i--;

                } else {

                    cnt++;

                }

            }

        }

        if(cnt > 0){

            if(cnt > 1){

                builder.append("->");

                builder.append(nums[nums.length-1]);

            }

            list.add(builder.toString());

        }

        return list;

    }

}

第三题

https://leetcode.cn/problems/sum-of-digits-of-string-after-convert/description/?envType=problem-list-v2&envId=**string

代码

复制代码
class Solution {

    public static final int[] table = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26};

    public int getLucky(String s, int k) {

        StringBuilder builder = new StringBuilder();

        for(int i = 0; i < s.length(); i++){

            builder.append(table[s.charAt(i) - 'a']);

        }

        int sum = 0;

        while(k-- != 0){

            sum = 0;

            for(int i = 0; i < builder.length(); i++){

                sum += builder.charAt(i) - '0';

            }

            builder.setLength(0); // 逻辑清空

            builder.append(sum);

        }

        return sum;

    }

}
相关推荐
小白菜又菜30 分钟前
Leetcode 1518. Water Bottles
算法·leetcode·职场和发展
长存祈月心41 分钟前
Rust Option 与 Result深度解析
算法
zcl_19911 小时前
记一次ThreadLocal导致的生产事故
java
RoboWizard1 小时前
怎么判断我的电脑是否支持PCIe 5.0 SSD?Kingston FURY Renegade G5
java·spring·智能手机·电脑·金士顿
ximy13351 小时前
Mysql基础知识之SQL语句——库表管理操作
sql·mysql·oracle
2501_938782091 小时前
《Ubuntu 系统下 MySQL 安装前的环境检查与依赖准备指南》
hive·mysql·ubuntu·adb
Java 码农1 小时前
mysql8.4.6 LTS 主从架构搭建
mysql·adb·架构
杭州杭州杭州1 小时前
机器学习(3)---线性算法,决策树,神经网络,支持向量机
算法·决策树·机器学习
毕设源码-钟学长2 小时前
【开题答辩全过程】以 儿童游泳预约系统为例,包含答辩的问题和答案
java·eclipse