首页 > 其他分享 >20240622训练

20240622训练

时间:2024-06-22 14:54:29浏览次数:26  
标签:训练 stdout int ans 20240622 刷子 cntme1 include

文件名是abcd的逆天考试(

算术(a)

题面:
给定一个长度为\(n\)的整数数列\(a_1,\dots,a_n\),求有多少个有序对\((i,j)\)满足\(i<j\wedge a_ia_j<a_i+a_j\)
题解:
枚举\(j\),有\(a_i(a_j-1)<a_j\),对\(a_j\)分类讨论。
当\(a_j>1\),\(a_i<a_j/(a_j-1)\),即\(a_i\le 1\)。
当\(a_j=1\),\(0<1\),即\(a_i\)取任意值。
当\(a_j=0\),\(a_i>0\),即\(a_i\ge1\)。
当\(a_j>1\),\(a_i<a_j/(a_j-1)\),即\(a_i\ge1\)。
在枚举的同时统计前面有多少个\(\le1\)和\(\ge1\)的即可。
代码

#include<cstdio>
#define int long long
int n,a,ans;
signed main(){
    freopen("a.in","r",stdin),freopen("a.out","w",stdout),scanf("%lld",&n);
    for(int i=1,cntle1=0,cntme1=0;i<=n;i++){
        scanf("%lld",&a);
        if(a>1)ans+=cntle1;
        else if(a==1)ans+=i-1;
        else ans+=cntme1;
        if(a<=1)cntle1++;
        if(a>=1)cntme1++;
    }
    return printf("%lld\n",ans),fflush(stdout),fclose(stdin),fclose(stdout),0;
}

刷墙(b)

题面:
有\(n\)种颜色的刷子,每个刷子可以刷\([l_i,r_i]\),新颜色会覆盖旧颜色,可以选择刷子的顺序,求墙上最多有多少种颜色。
题解:
因为点数较小,先离散化,然后动态规划。
状态:\(f(i,j)\)表示区间\([i,j]\)内最多有多少种颜色。
辅助函数:\(s(i,j)\)表示区间\([i,j]\)包含了多少种刷子。
转移方程:

\[f(l,r)=\max_{k\in[l,r)\wedge s(l,k)+s(k+1,r)<s(l,r)}(f(l,k)+f(k+1,r)+1) \]

在\([l,r]\)有中经过\([k,k+1]\)的刷子才能更新\(f(l,r)\)。
代码

#include<cstdio>
#include<algorithm>
const int N=605;
int n,t[N],cnt,l[N],r[N],s[N][N],f[N][N];
inline int find(int x){return std::lower_bound(t+1,t+cnt+1,x)-t;}
inline void tomax(int&x,int y){x<y&&(x=y);}
int main(){
    freopen("b.in","r",stdin),freopen("b.out","w",stdout),scanf("%d",&n);
    for(int i=1;i<=n;i++)scanf("%d%d",l+i,r+i),t[++cnt]=l[i],t[++cnt]=r[i];
    std::sort(t+1,t+cnt+1),cnt=std::unique(t+1,t+cnt+1)-t-1;
    for(int i=1;i<=n;i++)l[i]=find(l[i]),r[i]=find(r[i]),s[l[i]][r[i]]++;
    for(int len=2;len<=cnt;len++)for(int l=1,r=len;r<=cnt;l++,r++){
        s[l][r]+=s[l+1][r]+s[l][r-1]-s[l+1][r-1];
        for(int i=l;i<r;i++)if(s[l][i]+s[i+1][r]<s[l][r])tomax(f[l][r],f[l][i]+f[i+1][r]+1);
    }
    return printf("%d\n",f[1][cnt]),fflush(stdout),fclose(stdin),fclose(stdout);
}

标签:训练,stdout,int,ans,20240622,刷子,cntme1,include
From: https://www.cnblogs.com/junjunccc/p/18262333

相关文章

  • Python进大厂比赛中的特征工程与模型训练
    Python进大厂比赛中的特征工程与模型训练一、引言二、技术概述特征工程模型训练三、技术细节特征工程模型训练四、实战应用五、优化与改进特征工程模型训练六、常见问题特征工程模型训练七、总结与展望一、引言Python作为数据科学界的明星语言,其在机器学习、数......
  • 代码随想录算法训练营第十四天 | 226.翻转二叉树 101.对称二叉树 104.二叉树的最大深
    226.翻转二叉树题目:给你一棵二叉树的根节点root,翻转这棵二叉树,并返回其根节点。解题:思路:遍历的过程中交换每个节点的左右孩子。选择哪种遍历方式?中序不行,左中右,左边子节点交换完,处理中间交换了左节点和右节点,再处理右节点去交换时这个右节点就是原来的左节点,所以有一边就一......
  • PyTorch(一)模型训练过程
    PyTorch(一)模型训练过程#c总结实践总结该实践从「数据处理」开始到最后利用训练好的「模型」预测,感受到了整个模型的训练过程。其中也有部分知识点,例如定义神经网络,只是初步的模仿,有一个比较浅的认识,还需要继续学习原理。整个流程:「准备数据」,「创建数据加载器」,「选择......
  • 代码随想录算法训练营第17天 | 二叉树04
    代码随想录算法训练营第17天找树左下角的值https://leetcode.cn/problems/find-bottom-left-tree-value/找树左下角的值代码随想录https://leetcode.cn/problems/find-bottom-left-tree-value/路径总和https://leetcode.cn/problems/path-sum/description/路径总和2https......
  • 星海AI-GPU算力云平台:【神农-DeepFaceLab】云训练
    镜像介绍:DeepFaceLab(简称DFL)是一个GitHub上的开源项目,使用Python编写,基于TensorFlow框架。DFL的目标是提供一个易于使用的工具,使视频换脸变得更加简单和高效。DFL的作者之一还建设了一个活跃的DeepFaceLab中文论坛,上面有许多教程、讨论、素材和模型分享,为DFL的使用者提供了丰......
  • 寒假训练总结
    2023.1.19T3题目大意给定一棵树,边有黑白两种颜色,初始边都是黑色有两种操作将u到v路径上的边颜色反转询问u只经过黑边能走到几个点solution可以想一下链的部分分,用线段树维护边的颜色,然后在线段树上二分(或者二分套线段树)来找到点u经过黑边走到的区间拓展到树上,考虑树链......
  • 省选训练总结
    目录2024.2.19T1题目大意solutionT2题目大意solution2024.2.20T1T22023.2.22T1题目大意solution2023.2.23T1题目大意solutionT2题目大意solution2024.2.26T1题目大意solutionT2题目大意solutionT3题目大意solution2024.2.27T1题目大意solutionT3题目大意solution2024.2.28补题2024......
  • 代码随想录算法训练营第四十三天 | 完全背包理论基础、518.零钱兑换II、377. 组合总和
    完全背包理论基础题目链接:https://kamacoder.com/problempage.php?pid=1052文档讲解:https://programmercarl.com/%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98%E7%90%86%E8%AE%BA%E5%9F…视频讲解:https://www.bilibili.com/video/BV1uK411o7c9/思路完全背包中,每个物品可以......
  • 详解联邦学习中的异构模型集成与协同训练技术
    本文分享自华为云社区《联邦学习中的异构模型集成与协同训练技术详解》,作者:Y-StarryDreamer。引言随着数据隐私和安全问题的日益突出,传统的集中式机器学习方法面临着巨大的挑战。联邦学习(FederatedLearning)作为一种新兴的分布式机器学习方法,通过将模型训练过程分布在多个参与者......
  • 代码随想录算法训练营第42天 | 1049. 最后一块石头的重量 II 、494. 目标和 、474.一
    最后一块石头的重量II本题就和昨天的416.分割等和子集很像了,可以尝试先自己思考做一做。视频讲解:https://www.bilibili.com/video/BV14M411C7oVhttps://programmercarl.com/1049.最后一块石头的重量II.html这三体=题都没啥思路/***@param{number[]}stones*@re......