力扣&cf补题-1【算法学习day.94】

前言

###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题(力扣周赛432)

1.跳过交替单元格的之字形遍历

题目链接: 3417. 跳过交替单元格的之字形遍历 - 力扣(LeetCode)

题面:

代码:

java 复制代码
class Solution {
    public List<Integer> zigzagTraversal(int[][] grid) {
        List<Integer> ans = new ArrayList<>();
        int m = grid.length;
        int n = grid[0].length;
        int flag = 1;
        int x = 0;
        int y = 0;
        int r = 1;
        while(x<m){
            if(y!=0&&y%n==0&&r==1){
                x+=1;
                y = n-1;
                r = 0;
                continue;
            }
            if(y==-1&&r==0){
                x+=1;
                y = 0;
                r = 1;
                continue;
            }
            if(flag==1){
                ans.add(grid[x][y]);
                flag = 0;
                if(r==1){
                    y++;
                }else{
                    y--;
                }
                continue;
            }
            if(flag==0){
                if(r==1){
                    y++;
                }else{
                    y--;
                }
                flag = 1;
            }
        }
        return ans;
    }
}

2.pspspsps

题目链接: Problem - 2049B - Codeforces

题面:

代码:

java 复制代码
#include<bits/stdc++.h>
using namespace std;
int t, n;
string s;
int main(){
    cin >> t;
    while(t --){
        cin >> n >> s;
        bool flag = 0;
        for(int i = 0; i < n; i ++)
            for(int j = 0; j < n; j ++){
                if(s[i] == 'p' && s[j] == 's'){
                    if(!(i == n - 1 || j == 0)) flag = 1;
                }
            }
        if(flag) cout << "NO\n";
        else cout << "YES\n";
    }
    return 0;
}

后言

上面是数据结构相关的习题,下一篇文章会将其他相关的习题。

相关推荐
xu_yule几秒前
算法基础(数论)—费马小定理
c++·算法·裴蜀定理·欧拉定理·费马小定理·同余方程·扩展欧几里得定理
girl-07261 小时前
2025.12.28代码分析总结
算法
NAGNIP4 小时前
GPT-5.1 发布:更聪明,也更有温度的 AI
人工智能·算法
NAGNIP4 小时前
激活函数有什么用?有哪些常用的激活函数?
人工智能·算法
我居然是兔子4 小时前
异常练习:在试错中吃透Java异常处理的底层逻辑
java·开发语言
元亓亓亓4 小时前
LeetCode热题100--416. 分割等和子集--中等
算法·leetcode·职场和发展
BanyeBirth4 小时前
C++差分数组(二维)
开发语言·c++·算法
CC.GG5 小时前
【C++】STL容器----unordered_map和unordered_set的使用
java·数据库·c++
Overt0p6 小时前
抽奖系统(4)
java·spring boot·tomcat
xu_yule6 小时前
算法基础(数论)—算法基本定理
c++·算法·算数基本定理