Educational Codeforces Round 7

逆向实战:360加固DEX解密全流程解析(附Frida脚本与SoFixer修复技巧) 本文深入解析360加固DEX解密的全流程,涵盖动态Hook技术、Frida脚本应用及SoFixer修复技巧。通过实战案例详细展示如何识别加固特征、定位关键函数、实现ELF文件修复,并解析RC4和zlib解密算法,为逆向工程师提供全面的技术指导。 阅读详情

C. Not Equal on a Segment

预处理找到每个位置开始的最先出现的不同的数。

#include <bits/stdc++.h>

using namespace std;

#define ll long long

int a[200010];
int diff[200010];

int main(){
    int n,m;
    cin>>n>>m;

    for(int i=1;i<=n;i++){
        scanf("%d",&a[i]);
    }

    diff[n]=n+1;
    for(int i=n-1;i>=1;i--){
        if(a[i]==a[i+1]){
            diff[i]=diff[i+1];
        }else{
            diff[i]=i+1;
        }
    }

    while(m--){
        int l,r,x;
        scanf("%d%d%d",&l,&r,&x);
        if(a[l]!=x){
            printf("%d\n",l);
        }else{
            if(diff[l]<=r){
                printf("%d\n",diff[l]);
            }else{
                printf("-1\n");
            }
        }   
    }

    return 0;
}

D. Optimal Number Permutation

构造,只要相同的数距离恰当,总可以使得 s=0 。

#include <bits/stdc++.h>

using namespace std;


#define ll long long

int ans[1000010];

int main(){
    int n;
    cin>>n;

    if(n==1){
        cout<<"1 1"<<endl;
        return 0;
    }

    if(n==2){
        cout<<"1 1 2 2"<<endl;
        return 0;
    }

    int l=1;
    int r=n;
    int num=1;
    while(l<r){
        ans[l]=ans[r]=num;
        num+=2;
        l++;    r--;
    }

    l=n+1;
    r=2*n-1;
    num=2;
    while(l<r){
        ans[l]=ans[r]=num;
        num+=2;
        l++;    r--;
    }


    for(int i=1;i<=n*2;i++){
        if(ans[i]){
            printf("%d ",ans[i]);
        }else{
            printf("%d ",n);
        }
    }

    return 0;
}

E. Ants in Leaves

通过分析可以发现,不妨让深度小的叶子比深度大的先回到根,这样不会影响答案。我们依次处理根的所有子树,把该子树下的所有叶子高度找出来,排序,按高度从小到大处理。假设排序后 leaves(i) 是第 i 个叶子的高度,ans(i)是考察到此叶子时的答案, ans(i)=max(ans(i−1)+1,leaves(i)) 总是成立的。从另一个角度, ans 表明了路径会“阻塞”到什么时候。

#include <bits/stdc++.h>

using namespace std;

const int maxn = 500010;

vector<int> adj[maxn];
bool vis[maxn];

int depth = 0;
int ans=0;

vector<int> leaves;

void dfs(int u){
    depth++;
    vis[u]=1;
    int sz = adj[u].size();
    bool flag=1;
    for(int i=0;i<sz;i++){
        int v=adj[u][i];
        if(vis[v])continue;
        dfs(v);
        flag=0;
    }
    if(flag){
        leaves.push_back(depth);
    }
    depth--;
}

int main(){
    int n;
    cin>>n;
    for(int i=1;i<n;i++){
        int u,v;
        scanf("%d%d",&u,&v);
        adj[u].push_back(v);
        adj[v].push_back(u);
    }

    int sz = adj[1].size();
    vis[1]=1;
    for(int i=0;i<sz;i++){
        int u = adj[1][i];
        leaves.clear();
        dfs(u);
        sort(leaves.begin(),leaves.end());
        int leanum = leaves.size();
        int tmp=0;
        for(int j=0;j<leanum;j++){
            tmp=max(tmp+1,leaves[j]);
        }
        ans=max(ans,tmp);
    }

    cout<<ans<<endl;

    return 0;
}

F. The Sum of the k-th Powers

看了官方题解,不得不说这题有点神。首先要知道一点,不管 k 是多少,肯定有一个最高次为k+1的公式(题目已经提示了)。然后 i=k+2 的部分,是很容易用快速幂计算出来的,这个时候,我们可以用拉格朗日多项式得到一个通项公式(唯一的),然后计算第n项即可。

#include <bits/stdc++.h>

using namespace std;

#define ll long long

const ll mod = 1e9+7;

ll mod_pow(ll a,ll n){
    ll re=1;
    while(n){
        if(n&1){
            re*=a;
            re%=mod;
        }
        a*=a;
        a%=mod;
        n>>=1;
    }
    return re;
}

ll y[1000010];

void ExEuclid(ll a,ll b,ll &x,ll &y,ll &q){  
    if(b==0){  
        x=1;y=0;q=a;  
        return;  
    }  
    ExEuclid(b,a%b,y,x,q);  
    y-=x*(a/b);  
}

ll inv(ll num){  
    ll x,y,q;  
    ExEuclid(num,mod,x,y,q);  
    if(q==1)return (x+mod)%mod;  
}

int main(){
    ll n,k;
    cin>>n>>k;

    for(int i=1;i<=k+2;i++){
        y[i]=y[i-1]+mod_pow(i,k);
        y[i]%=mod;
    }

    if(n<=k+2){
        cout<<y[n]<<endl;
        return 0;
    }

    ll dividend=1;
    ll divisor=1;
    for(int i = 1;i<=k+2;i++){
        dividend *= (n-i);
        dividend %= mod;
    }
    for(int i=1;i<=k+1;i++){
        divisor *= i;
        divisor %= mod;
    }

    bool minus = !(k&1);

    ll ans = 0;
    for(int i=1;i<=k+2;i++){
        ll tmp = (dividend*inv(n-i))%mod * inv(divisor);
        tmp %= mod;

        tmp *= y[i];
        tmp %= mod;
        if(minus)tmp=-tmp;
        minus = !minus;

        ans += tmp;
        ans += mod;
        ans %= mod;

        divisor*=inv(k+2-i);
        divisor%=mod;
        divisor*=i;
        divisor%=mod;
    }

    cout<<ans<<endl;
    return 0;
}
毕设助力!从0到1构建基于YOLO的家居安防异常活动监测系统,让你的毕设守护家庭安全 做完这个项目,你会发现自己完整走过了“数据采集→标注→模型训练→功能集成→界面开发”的毕设全流程,这不仅是技术能力的证明,更是对“技术守护生活”这一理念的实践。答辩时,你可以重点讲这几点:系统解决了家居安防的哪些痛点、对比了不同YOLO模型的性能差异、系统未来能怎么优化(比如对接智能门锁/报警器、实现语音交互)。未来,这个系统还能往“更智能”的方向发展:比如结合行为分析判断异常意图、开发移动端APP实现全屋设备联动、在智慧社区中实现多家庭联防……想象空间很大。 阅读详情

相关推荐

GitHub 镜像站点

国内访问 GitHub 有时会遇到速度慢或不稳定的情况,这时 GitHub 镜像站点就能帮上忙。它们通过代理或缓存机制,让你更顺畅地浏览仓库、下载资源甚至克隆代码。希望这些信息能帮你更顺畅地访问 GitHub 资源。下面表格汇总了一些常见的镜像站及其主要用途。

BillKu的博客 6万+

【 Educational Codeforces Round 71 (Rated for Div. 2) F】Remainder Problem【分块】

题意: 一个长度为 5∗1055*10^55∗105 的数组,初始为空,支持两种操作。操作 111,1 x y1\ x\ y1 x y 表示将 axa_xax​ 增加 yyy。操作 222,2 x y2\ x\ y2 x y,表示统计所有下标模 xxx 为 yyy 的数的和,一共有 5∗1055*10^55∗105 次...

lucius-liu.cn 703

Windows安装Pytorch3d

pytorch和pytorch3d版本对应关系如下:https://github.com/facebookresearch/pytorch3d/releasescuda和NVIDIA CUB版本对应关系如下:https://github.com/NVIDIA/cub/releases?page=1本人配置如下:GPU:1050TiCUDA:11.1python:3.8。

Snakewood的博客 4287

Educational Codeforces Round 7总结

A题: A题题目链接 题目描述: A. Infinite Sequence time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Con

多反思,多回顾,要坚持。 722

汽车电子电气架构

控制器:从多独立 ECU → 域控制器(DCU) → 中央计算平台 + 区域控制器,硬件集成度持续提升,冗余减少;算力:从分散无集中算力 → 按域分配算力 → 全域算力集中,算力量级从 MIPS 跃升至 TOPS,支撑高阶智驾;网络:从低速 CAN/LIN 独占 → 以太网为主、总线为辅 → 高速以太网主干,数据传输速率提升千倍;软硬件:从软硬件深度绑定 → 初步解耦 → 完全解耦(SOA),实现 “硬件预埋、软件解锁”;线束。

LXY_LXY_的博客 1438

5分钟搞定Google Custom Search API申请:从注册到获取CX Key全流程

本文详细介绍了如何快速申请和配置Google Custom Search API,从Google Cloud项目创建、启用计费、获取API Key,到在Programmable Search Engine控制台创建自定义搜索引擎并获取关键的CX Key,提供了全流程实战指南。文章还包含安全配置建议、API调用测试方法及前端与后端的集成代码示例,帮助开发者高效实现网站或应用的智能搜索功能。

weixin_29227585的博客 1673

Educational Codeforces Round 7 B

Description You are given the current time in24-hour formathh:mm. Find and print the time afteraminutes. Note that you should find only the time afteraminutes, see the examples to clari...

84

实战指南:用Python实现ONVIF WS-Discovery设备发现(附完整代码)

本文提供了一份详细的实战指南,介绍如何使用Python实现基于ONVIF标准的WS-Discovery设备发现协议。文章深入解析了协议原理、网络通信模型,并提供了完整的代码实现,帮助开发者快速构建智能安防和物联网应用中的设备自动发现工具,有效提升网络设备集成与管理的效率。

chair的专栏 1114

Educational Codeforces Round 7 题解

水题

u014445884的专栏 414

5G物理层基础知识

1、关于RB和RE (1) RB(Resource Block,资源块)频率上连续12个子载波,时域上一个slot(时隙,14个ofdm符号) (2) RE(Resource Element,资源单元)频率上一个子载波,及时域上一个ofdm符号 注意:协议规定,5G每个时隙(非扩展CP)的符号数为14个(扩展CP情况下每个时隙有12个符号),而LTE(非扩展CP)每个时隙的符号数为7个。 简单说:一个12X14的方格,大的整个叫一个RB,每一个小块叫一个RE。另外,一个RE可存放一个调制符号(mo.

qq_39074243的博客 2万+

【Java微服务-医疗管理项目】(附源码+资料+教程)

尚医疗是专门为各大医院、门诊提供的一款医疗管理平台。 系统包含:系统管理、药品进销存管理、看病就诊、收费管理、检查管理、数据统计等核心模块。 通过尚医疗系统可以快速、方便的管理病人从挂号到门诊结束所涉及到的全套流程。也可以清晰明了的体现出药品进货、出售的所有记录。.........

m0_72882572的博客 2203

Educational Codeforces Round 7 ABCDE

套题链接:http://codeforces.com/contest/622 难度类型:基本都是想法题

ned_chu的博客 335

RV1126B芯片实战:如何用这款视觉处理器SoC打造你的第一个AI摄像头项目

本文详细介绍了如何利用瑞芯微RV1126B视觉处理器SoC从零构建AI摄像头项目。涵盖硬件选型、开发环境搭建、ISP配置、AI模型部署及系统集成等关键步骤,帮助开发者高效实现边缘计算方案,特别适合智能安防和工业检测应用。

dropout6artist的博客 931

Educational Codeforces Round 76 7/7

想了想,本来一直都是打打cf,但是没有任何记录,感觉还是记录一下cf的补题比较好 A #include <iostream> using namespace std; int main() { int T; cin >> T; while (T--) { int n, x, a, b; cin >> n >> x >&gt...

BPM136(BPMThor) 196

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Educational Codeforces Round 7 C---E

给定长度为n的数组,给定m个查询,求[l, r]中不等于x的其中一个下标。赛时认为维护[l,r]区间最大值和最小值及其所在下标就已经可行。 直接上ST表了。 实际上还有一种比较简单解法。 假设a[l] != x,那么直接输出l就好了。 否则,找到右边第一个和a[l]不相等的下标即可。(可双指针预处理实现) D. Optimal Number Permutation 题意: [1, n]中每个数都会出现两次,求S=∑i=1n(n−i)∗abs(y[i]−x[i]+i−n)S = \sum_{i = 1} ^

qq_56195933的博客 238

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Educational Codeforces Round 7 Codeforces 622D Codeforces 622E

题目: 622C Not Equal on a Segment 分析: 对于这题,对于连续相等数字做一下压缩处理,如果相等的直接跳到下一个不等的位置在比较就好了,O(N)的时间压缩预处理,查询O(1)。 题目: 622D Optimal Number Permutation 分析: 这是道找规

01的世界 440

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Educational Codeforces Round 7、

A - Infinite Sequence 题意:有一种这样的无限序列数 1,1,2,1,2,3.....(如果最大数n,那么就有从1到n的所有1到n的数); 思路:题意只给了1秒、直接模拟肯定超时,我用的是二分找下界 1 #include<iostream> 2 using namespace std; 3 long long f(long long...

weixin_30364325的博客 76

Educational Codeforces Round 68 (Rated for Div. 2) 7-15

各种被卡细节,然后掉绿了QAQ http://codeforces.com/contest/1194/problem/B ​ #include<bits/stdc++.h> using namespace std; typedef long long ll; #define P pair<int,int> #define in(x) int x;scanf("%d"...

liulx15的博客 165

Educational Codeforces Round 122 A. Div. 7

题目 给你一个整数 n。 您必须更改其中的最小位数,使得结果数字没有任何前导零并且可以被 7 整除。 如果有多种方法可以做到这一点,请打印其中任何一种。 如果给定的数字已经能被 7 整除,则保持不变。 输入 第一行包含一个整数 t (1≤t≤990)——测试用例的数量。 然后是测试用例,每个测试用例由一行组成,其中包含一个整数 n (10≤n≤999)。 输出 对于每个测试用例,打印一个不带任何前导零的整数——更改的结果(即可以被 7 整除的整数,可以通过更改 n 中的最小可能位数来获得)。 如果有多种方法

TGX的博客 680

Educational Codeforces Round 7 A. Infinite Sequence

A. Infinite Sequence time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Consider the infinite sequence of integers: 1, 1,

滴水穿石,慢慢积累,总会有成果 391

Educational Codeforces Round 7 E. Ants in Leaves 贪心

题目链接:http://codeforces.com/contest/622/problem/E 题意: 每个叶子都有一个蚂蚁,然后蚂蚁会爬到根去,每秒可以爬一个节点 然后每个节点的蚂蚁最多同时只有一个(除了根 然后问你最少多久,可以使得所有蚂蚁都在根的位置 解法: 贪心就好了 对于叶子,我们都记录下他们的深度,然后我们发现,如果存在两个叶子的深度相同,那么他们一定会相遇在...

aishangg437965的博客 143
上一篇: poj 2104 K-th Number
下一篇: Codeforces 8VC Venture Cup 2016 - Elimination Round
squee_spoon
博客等级 码龄14年 61粉丝 455原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值