牛客练习赛51 A-E

张量分解浅谈(四 Tucker 分解) 学完了SVD算法之后,我们继续回到张量几大分解的学习上来,本期学习的主要内容是张量的 Tucker 分解 以及 前面的CP分解还留下一点没有说完,正好一并补齐!后面的公式我将采用颜色标记,红色代表必须掌握,蓝色尽量掌握! 在这之前先附一张图,包含了各种运算符号的名称含义,大部分是前面说过或者使用过的: Tensor decomposition一 . Tucker 分解公式介绍和原理二 . 张量的 n-Rank 一 . Tucker 分解公式介绍和原理 我们先来看一张被使用过很多次的Trucker 分解图 阅读详情

A - abc

水

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5+7;

int a[MAXN],c[MAXN];
char s[MAXN];
int main() {
        scanf("%s",s);
        int len = strlen(s);
        memset(a,0,sizeof(a));
        memset(c,0,sizeof(c));
        ll ans = 0;

        for(int i=0;i<len;++i)
                if(s[i]=='a')   a[i] = a[i-1]+1;
                else            a[i] = a[i-1];
        for(int i=len-1;i>0;--i)
                if(s[i]=='c')   c[i] = c[i+1]+1;
                else            c[i] = c[i+1];
        for(int i=0;i<len;++i)
                if(s[i]=='b')
                        ans += (ll)a[i]*c[i];
        printf("%lld\n",ans);
        return 0;
}

B - 子串查询

主要是学习了一下string 中 find 的用法
字符串,暴力

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5+7;


int main() {
        int n,q;
        string s;
        cin>>n>>q>>s;
        while(q--) {
                string a;
                cin>>a;
                int pos = 0, flag = 1;
                for(int i=0;i<a.length();++i) {
                        int it = s.find(a[i],pos);//从串s的pos位置开始往后找
                        if(it == s.npos) {//没找到就返回npos
                                flag = 0;
                                break;
                        }
                        else    pos = it + 1;
                }
                if(flag)        cout<<"YES"<<endl;
                else            cout<<"NO"<<endl;
        }
        return 0;
}

C - 勾股定理

数学题

根据维基百科我们可以知道
找寻勾股数的小技巧:
若需要一组最小数为奇数的勾股数,可任意选取一个 3 或以上的奇数,将该数自乘为平方数,除以 2,答案加减 0.5 可得到两个新的数字,这两个数字连同一开始选取的奇数,三者必定形成一组勾股数。但却不一定是以这个选取数字为起首勾股数的唯一可能,例如 ( 27 , 364 , 365 ) {\displaystyle (27,364,365)} (27,364,365)并非是以 27 为起首的唯一勾股数,因为存在另一个勾股数是 ( 27 , 36 , 45 ) {\displaystyle (27,36,45)} (27,36,45),同样也以 27 为首
对于任何大于1的整数 x , x 2 + 1 、 x 2 − 1 与 2 x x,x^2+1、x^2-1与2x x,x2+1、x2−1与2x,三个数必为勾股数

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
        ll n;
        cin>>n;
        if(n<=2)        cout<<-1<<endl;
        else if(n&1) {
                n>>=1;
                cout<<2*n*n+2*n<<" "<<2*n*n+2*n+1<<endl;
        }
        else {
                n>>=1;
                cout<<n*n-1<<" "<<n*n+1<<endl;
        }
        return 0;
}

D - 羊吃草

这个是贪心写出来的(因为数据范围比较小)

正解应该是二分图匹配

//贪心
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e3+7;
struct line{
        int l,r;
}L[MAXN];
bool cmp(line x,line y){
        if(x.r==y.r)    return x.l<y.l;
        return x.r<y.r;
}
bool vis[MAXN];

int main() {
        // freopen("../in.txt","r",stdin);
        // freopen("../out.txt","w",stdout);
        ios::sync_with_stdio(0);
        int n,q;
        cin>>n>>q;
        for(int i=0;i<n;++i)    cin>>L[i].l;
        for(int i=0;i<n;++i)    cin>>L[i].r;

        sort(L,L+n,cmp);

        while(q--) {
                memset(vis,0,sizeof(vis));
                int ans = 0;
                int l,r;
                cin>>l>>r;
                for(int i=0;i<n;++i) {
                        for(int j=L[i].l;j<=L[i].r;++j) {
                                if(!vis[j] && j>=l && j<=r) {
                                        vis[j] = 1;
                                        ans ++;
                                        break;
                                }
                        }
                }
                cout<<ans<<endl;
        }
        return 0;
}

E - 数列

这里

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5+7;


int main() {
        // freopen("../in.txt","r",stdin);
        // freopen("../out.txt","w",stdout);
        ios::sync_with_stdio(0);
        int n,m;
        cin>>n>>m;
        m -= n;//每一位都填1
        for(int i=1;i<=n;++i) {
                int T = (n-i)/i; //最大的元素
                int P = (n-i)%i; //
                int S = P*(T+1)*(T+2)/2 + (i-P)*(T+1)*T/2;
                if(S <= m) {
                        for(int j=1;j<=P;++j)
                                for(int k=1;k<=T+2;++k)
                                        cout<<k<<" ";
                        for(int j=1;j<=i-P;++j)
                                for(int k=1;k<=T+1;++k)
                                        cout<<k<<" ";
                        cout<<endl;
                        break;
                }
        }
        return 0;
}

【Dify】PPT生成工具应用 本文介绍了一款自动化PPT生成工具,通过智能接口将文本内容高效转化为结构化演示文档。该系统采用三阶段工作流(内容输入、HTTP请求上传、文件输出),无需复杂操作即可生成专业PPT。工具适用于教学课件、产品发布、企业培训等场景,能显著提升内容表达效率,特别适合初学者快速制作演示材料。文章详细说明了核心节点、应用场景及开发资源,为文本到PPT的自动化转换提供了实用解决方案。 阅读详情

相关推荐

Claude Code Router 401错误修复

claude code router配置相关环境变量问题

如沐春风 6360

牛客练习赛50 E tokitsukaze and Segmentation dp

链接:https://ac.nowcoder.com/acm/contest/1080/E 来源:牛客网 题目描述 tokitsukaze有一个长度为n的字符串,字符串仅包含'0'-'9'。 tokitsukaze要把这个字符串切割成若干个子串,每个子串作为一个十进制的数,能被3整除,且不含前导0。 问有多少种切割的方案。由于答案可能很大,请输出mod 998244353 后的结果。 输入描...

lt的博客 591

Diebold-Mariano检验

给定两个预测的预测结果,我们希望比较他们的预测结果,以用于预测模型精度的比较。 Diebold-Mariano检验本质是一个t检验,用于检验替代预测的两个损失序列的平均值是否相等。即,它是一系列损失差的零均值的t检验。在存在自相关的情况下,它使用损失差分时间序列标准差的自相关一致性估计。 注意,在使用DM检验式时,假设损失序列是平稳的。 另外,DM检验在小样本数据时往往会拒绝零假设。对于小样本数据,推荐Harvey, Leybourne and Newbold (HLN)检验【1】; 参考文献 【1】htt

weixin_43948357的博客 6565

牛客练习赛51

https://ac.nowcoder.com/acm/contest/1083#question A、 abc 题意: 给出一个字符串s,你需要做的是统计s中子串”abc”的个数。子串的定义就是存在任意下标a<b<c,那么”s[a]s[b]s[c]”就构成s的一个子串。如”abc”的子串有”a”、”b”、”c”、”ab”、”ac”、”bc”、”abc”。 输入描述: 一个...

AAAAAAAC的博客 524

PCB布局布线要求及多层电路板叠加原则

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考本文主要针对PCB布局布线中的要点进行了总结,并对多层电路板的叠加原则进行了解释。

Ka_wyb的博客 2939

神经网络:初学者指南(专业版)

神经网络是一种受生物大脑启发的计算模型,由多层互连的人工神经元组成。本文从生物神经元结构出发,介绍了感知器模型、激活函数、网络架构(输入/隐藏/输出层)等基础概念,并详细阐述了前向传播、反向传播、损失函数和优化器等核心训练机制。同时涵盖了CNN、RNN等常见架构,以及过拟合、梯度消失等关键挑战,最后概述了神经网络在计算机视觉、NLP等领域的广泛应用。全文系统性地梳理了神经网络的基础理论和实践要点,为初学者提供了清晰的学习路径。

weixin_42107409的博客 1785

牛客练习赛 50:E. tokitsukaze and Segmentation(DP优化)

题目大意如图 (觉得还是有必要写一篇题解,做法有很多,而我只会降智严重的做法) 题解:考虑暴力dp,对于每个 i 结尾的数字,枚举前面不为0的数字,设下标为j,若满足sum[i] == sum[j] 则转移dp:tp[i]+=tp[j]tp[i] += tp[j]tp[i]+=tp[j];sum[i] 表示前 i 个数字之和对3的余数。 考虑优化:注意到转移方程是一个求和的形式,而且需要满足条件...

qq_41997978的博客 369

MCSDK5.4.8电机库双电阻采样适配:从扇区判断到固定采样的重构实践

本文详细解析了MCSDK5.4.8电机库中双电阻采样技术的重构实践,从扇区判断到固定采样的关键步骤。通过硬件配置优化、核心文件重构及电流读取函数改造,实现高效稳定的电机控制,特别适用于成本敏感型项目。文章还提供了占空比限制计算、参数调整及常见问题排查等实用技巧,助力工程师快速掌握两电阻采样方法。

weixin_42532938的博客 281

牛客 羊吃草(二分图)

题目链接:https://ac.nowcoder.com/acm/contest/1083/D 题意 有一个草原可以用一个1~400的数轴表示。有n头羊和q个查询。每头羊的编号分别是1,2,3…n。第i头羊只喜爱数轴上[ai,bi]这样的一个闭区间,每一时刻每头羊只可能在自己喜爱的区间的某个点上吃草。现在给出q个查询,每个查询两个整数l,r。你需要计算出在同一时刻,最多能有多少头羊同时在这个区间内...

qq_41418281的博客 312

GB28181 —— 3、C++编写GB28181设备端,完成注册、注销、保活心跳、响应查询目录等功能(附源码)

GB28181 —— Win10下编写GB28181设备端,完成注册、注销、保活心跳、响应查询目录等功能(附源码)

1309

python 实现一个完整的基于Python的多视角三维重建系统,包含特征提取与匹配、相机位姿估计、三维重建、优化和可视化等功能

本文介绍了一个基于Python的多视角三维重建系统的实现,涵盖了特征提取与匹配、相机位姿估计、三维重建、优化和可视化等功能。首先,系统通过安装必要的库(如OpenCV、NumPy等)并加载图像数据,初始化相机参数。接着,系统使用SIFT、SURF或ORB算法提取图像特征点,并通过FLANN或BF方法进行特征匹配,应用Lowe's ratio test筛选优质匹配。该系统为后续的相机位姿估计和三维重建奠定了基础,能够从多视角图像中恢复三维场景结构。

huanghm88的专栏 616

牛客练习赛50 (A,B(线段树),C(顶堆),D(最短路),E(dp优化))

A出前三,补了D,E,真菜。 题目链接 B-tokitsukaze and Hash Table 我的写法是线段树。据说正解是并查集。。。 #include<bits/stdc++.h> using namespace std; const int N=1e6+10; int sum[4*N],val[N]; int a[N]; void build(int id,int...

ccsu_deer 529

QT应用编程: 编写低功耗BLE蓝牙调试助手(Android系统APP)

一、环境介绍 QT版本: 5.12.6 编译环境: win10 64位 目标系统: Android 完整工程源码下载地址(包含APK文件):https://download.youkuaiyun.com/download/xiaolong1126626497/19051696 二、功能介绍 本软件是一款BLE蓝牙串口调试助手,支持常规的发送和接收调试,BLE是低功耗类型蓝牙,在智能家居、物联网领域使用较多。BLE低功耗蓝牙一般不能直接使用手机进行连接,手机蓝牙默认都是工作在传统蓝牙模式,无法直接连接BL..

7660

牛客练习赛51-A(二分) B(二分) C(数论结论) D(二分匹配) E(思维+二分) F(矩阵DP+树剖)

Contest:https://ac.nowcoder.com/acm/contest/1083#question 当时comet和这个重了,就去打comet了(谁让comet奖品看起来更好一点呢),结果被吊打,最后一个小时才来写这场,想着混个签到抽抽短袖,结果发现题目意外的简单点?(结果成了二分场?是不是数据很水啊....) A-abc(二分) 题目链接:https://ac.nowcod...

永远鲜红の幼月的博客 385

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

牛客练习赛60 A.大吉大利

牛客练习赛60 A.大吉大利 题目链接 题目描述 给定n个整数,依次为 a1,a2,...,ana_1,a_2,...,a_na1​,a2​,...,an​ 。 求 ∑i=1n∑j=1n(ai&aj)\sum_{i = 1}^n\sum_{j = 1}^n(a_i\&a_j)∑i=1n​∑j=1n​(ai​&aj​)。“&”是二进制的与运算符。 输入描述: 第一行一...

旺崽的博客 2519

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

牛客练习赛51(部分题解)

牛客练习赛51(部分题解) ps:菜鸡一枚,纯属供自己复习所用,如有错误还望指出 A:abc 感觉题目应该说明下的,开始乍一看题目,还以为是kmp,原来题目中的子串不是我们所常规中的子串,而是子序列(我是这么理解的) 然后耽误会时间,由于是个签到题,所以不会设很难, 但是还是WA了一发,本想着就只有1e5,但是子串却可能远不止如此,加了long long 就过了 #include<cstdi...

serendipity的博客 561

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

牛客练习赛51(B题 子串查询)

子串查询 题目描述 给出一个长度为n的字符串s和q个查询。对于每一个查询,会输入一个字符串t,你需要判断这个字符串t是不是s的子串。子串的定义就是存在任意下标a<b<c<d<e,那么”s[a]s[b]s[c]s[d]s[e]”就构成s的一个子串。如”abc”的子串有”a”、”b”、”c”、”ab”、”ac”、”bc”、”abc”。 输入描述: 第一行两个数n,q。1<...

不知所云的博客 1011

【牛客练习赛67:最短路+位运算】E:牛妹游历城市

牛客练习赛67:E题 牛妹游历城市 【难度】 4.5/104.5/104.5/10 有点难度吧 【题意】 一共有 nnn 个点,每个点有权值 aia_iai​ 若 ai&aj≠0a_i\&a_j\ne0ai​&aj​​=0,则这两点之间连了一条双向边,边权为 lowbit(ai&aj)lowbit(a_i\&a_j)lowbit(ai​&aj​) 问你:从1号点到nnn号的最短距离。 若无法到达输出“Impossible” 【数据范围】 1≤n≤1051\l

溢流眼泪的博客 339

牛客周赛 Round 51

线段树求最大子段和的模板题,无非就多要维护一个最小子段和,然后让区间最大子段和,还有区间最小子段和之间取个。二分完以后只要跑个dfs就行了,也就是如果遇到这个点数值比二分的大就不用走就行。小学数学题,把每一位加起来只要能被3整除就一定能被3整除。很经典的最大最小的问题,遇到这类问题直接二分答案。如果是偶数就永远都不可能是。

qq_33269561的博客 1372

牛客练习赛60 A-大吉大利[签到][位运算]

牛客练习赛60 A-大吉大利 题目链接(Click) 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 给定n个整数,依次为a1,a2,…,an。 求∑i=1n∑j=1n(ai&aj) \sum_{i = 1}^n\sum_{j = 1}^n(a_i\&a_j) i=1∑n​...

MrBeanC的博客 230

牛客练习赛40-题解(部分)

牛客练习赛40-题解(部分) 官方题解:https://www.nowcoder.com/discuss/154293?type=101 A-小D的剧场 大概意思就是,有1~49个数,代表着不同的音符,问你能组成长度为n的串有多少种(mod 109+7)。有若干个限制,比如1 2 3,就是1,2,3不能放在一起,然后问你在这些限制下有多少种不同的长度为n的串。 3≤n≤500,0≤q≤117649...

休想骗我打代码:) 748

牛客练习赛51 A B C

文章目录ABC A 前后缀维护字符串中b左边a的个数和b的个数,对于每个b,它能构成的的abc的个数即为它前面a的个数乘以它后面c的个数 #include<bits/stdc++.h> using namespace std; #define ll long long #define inf 0x3f3f3f3f typedef pair<int,int> pii; str...

cloudy_happy的博客 271

牛客练习赛51 E-数列

E-数列 题目链接:https://ac.nowcoder.com/acm/contest/1083/E 题目描述:小乔有一个长度为n的整数数列,最开始里面所有的值都为0,小乔需要将在1…n的每一个位置填入一个大于0的正整数,得到一个新的数列,并且这个数列所有数的和不超过m,小乔对这个数列会有一个喜爱度,小乔对这个数列的喜爱度为满足2<=i<=n并且a[i]=a[i-1]...

weixin_30345055的博客 129

牛客练习赛51 E 数列

链接:https://ac.nowcoder.com/acm/contest/1083/E 来源:牛客网 题目描述 小乔有一个长度为n的整数数列,最开始里面所有的值都为0,小乔需要将在1…n的每一个位置填入一个大于0的正整数,得到一个新的数列,并且这个数列所有数的和不超过m,小乔对这个数列会有一个喜爱度,小乔对这个数列的喜爱度为满足2<=i<=n并且a[i]=a[i-1]+1的i的个数...

九峰的博客 412

题解:牛客周赛 Round 56(A-E)

心灰意冷的他找到 小S 生成了一个虚拟对象 小C ,在一次次的模拟约会中达成“一起进入电影院”的人生成就。对于每一组测试数据,在一行上输出一个整数,代表能组成周长最大三角形的周长;注意,当开心的起始时间和结束时间相等时,我们认为 小C 一整天都感到开心。代表班级同学数量、留下来的同学数量和叠一只纸飞机需要的纸的数量。对于每一组测试数据,在一行上输出两个正整数,代表你找到的两个值。代表 小C 感到开心的时间段数量和 小C 喜欢的奶茶数量。然后,我们可以取一个数作为异或的主要对象,比如本题的上限。

2301_81246674的博客 1168

牛客练习赛52 | C | [烹饪] (DP,裴蜀定理,gcd)

牛客练习赛52 C 烹饪 链接:https://ac.nowcoder.com/acm/contest/1084/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K 64bit IO Format: %lld 题目描述 “你已经是一个成熟的孩子了,要学会自己烹饪了!” 小 Y 上山拜师学艺,经过 ...

weixin_30387663的博客 829
上一篇: The Preliminary Contest for ICPC Asia Nanjing 2019
下一篇: 图形学实验01
陶鸿杰
博客等级 码龄9年 93粉丝 298原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值