ytu 文件操作 - 插入数据
    
            
摘要:提交方式:C++ #include<cstdio> #include<iostream> #include<algorithm> #define N 10 using namespace std; struct student { char num[10]; char name[8]; int sc
        
阅读全文
 
        
            
    ytu 英文字符大小写(文件)
    
            
摘要:提交方式:C++,直接提交即可 #include<cstdio> #include<iostream> #include<cstring> using namespace std; int main() { FILE* fp; int i, j, n; if ((fp = fopen("score.
        
阅读全文
 
        
            
    ytu C语言习题5.25--文件操作1
    
            
摘要:提交方式:C++(不需要加return和}) #include<cstdio> #include<iostream> #include<cstring> using namespace std; int tot[100000]; int num[100000]; int ids[100000]; c
        
阅读全文
 
        
            
    蓝桥杯 轨道炮
    
            
摘要:性质1:已知时间为0时所有单位的确定位置。 性质2:已知所有单位的初始方向。 性质3:所有单位不改变方向。 性质4:已知所有单位的运动速度 性质5:所有单位不改变运动速度。 要求1:只计算一个时刻答案 要求2:在答案时刻,必须满足在同一直线上的单位数量最多 时间复杂度:支持O(n^2) 猜想1:对于
        
阅读全文
 
        
            
    蓝桥杯 答疑
    
            
摘要:性质1:每个同学问问题分为两个阶段,第一个阶段问问题是一个时间(s_i+a_i),第二个阶段离开教室是另一个时间(e_i) 性质2:每次发消息是在第一个阶段之后 性质3:“时刻”具有累加性,前面同学浪费的时间,后面的每个同学都要再浪费一次 结论: 显然,后面式子的值是固定的,那么只要最小化前面的式子
        
阅读全文
 
        
            
    蓝桥杯 游园安排
    
            
摘要:性质1:每个名字长度不超过10 性质2:名字总数不超过十万个 性质3:排序后名字必须按预约顺序排序 性质4:排序后名字必须单调递增(严格) 性质5:不存在重名(性质4,去除重复名字) 性质6:总是优先选择名字最小的游客 性质7:排序后游客数量尽量多 性质8:支持O(n)(性质2、性质1) 解法1:考
        
阅读全文
 
        
            
    蓝桥杯 画廊
    
            
摘要:性质1:只有两边有画 性质2:对于每一边,画都呈线性排列 性质3:出发点为固定点、结束点为固定点,且位于线性排列的两端 公理1:三角形的两边之和大于第三边 由性质2和公理1可知,当先走完一边的点后,如果想到另外一边,那么直接走一个斜边一定比直接过去然后到那个点总距离更短。 即得到 性质4:对于任意一
        
阅读全文
 
        
            
    C/C++经典程序训练6---歌德巴赫猜想的验证
    
            
摘要:这个题做了一会,发现怎么都显示段错误,就粘了一个Miller-Rabin 错误代码 #include<cstdio> #include<iostream> #include<cmath> #include<algorithm> #include<iomanip> using namespace st
        
阅读全文
 
        
            
    数组奇偶操作
    
            
摘要:C++代码 #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int a[10000],b[10000],val[10000]; int main(){ int n; do{ scanf("%d"
        
阅读全文
 
        
            
    汉诺塔新论
    
            
摘要:一天,桶子在刷abc时遇到了一个难题:已知有三个柱子和n个圆盘,且n个圆盘起始都在第一个柱子上,要求给出解决这个问题的过程。 桶子经过苦思冥想,仍旧无法解答这个问题,于是他决定求助冈部伦太郎。但是他觉得不能完全借鉴别人的答案,所以就决定把问题分成三个步骤。 第一步:求助冈部伦太郎,得到把一号柱子上除
        
阅读全文
 
        
            
    训练赛 赛后总结
    
            
摘要:建议做一个"平均用时",比如总时间为五个小时,一共十个题,那么一个题平均三十分钟,起码要看二十分钟。 小心被榜单带歪! TRANSLATE with x English Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw
        
阅读全文
 
        
            
    AtCoder Beginner Contest 222 D - Between Two Arrays
    
            
摘要:题意 题解 公理1:此题支持O(N2)。 公理2:对于每个合法序列,其值单调不减。 灵感1(公理1):是否可以DP? 性质1(公理2):在一个序列不断"递增"的过程中,其能够选择的最小值单调不降。 公理3:方案数具有累加性,不具有后效性。 答案1(灵感1、公理3):可以保存下所有状态,状态设计为dp
        
阅读全文
 
        
            
    AtCoder Beginner Contest 225 D - Play Train
    
            
摘要:题意 题解 手动做链表模拟 #include<cstdio> #include<iostream> #include<vector> using namespace std; const int MAXN = 2e5; struct Car { int front, back; }tr[MAXN];
        
阅读全文
 
        
            
    AtCoder Beginner Contest 226 D - Teleportation
    
            
摘要:题意 题解 公理1:最小化操作次数。 公理2:巫师可以无限次跳跃,跳跃次数与输出的答案无关。 性质1(公理1、2):跳跃(a,b)可被优化为(a/gcd(a,b),b/gcd(a,b)),且答案不会变劣。 前置知识1:set<pair<int,int>>可自动去重,输出set.size()即可得到答
        
阅读全文
 
        
            
    AtCoder Beginner Contest 228 D - Linear Probing
    
            
摘要:题意 给定一个序列A和N=2^20,A的范围为[0,N-1],初始值均为-1。 操作1:设h=x(给出),如果a[h%MOD]!=-1就h+1,直到a[h%MOD] 1为止。之后,设a[h%MOD]的值为x。 操作2:输出a[x%MOD]。 数据范围:x>=0,保证操作1有答案。 题解 性质1:不能
        
阅读全文
 
        
            
    AtCoder Beginner Contest 229 D - Longest X
    
            
摘要:题意 给定一个只包含'X'和'.'的串和整数k,可以对串进行k次替换,每次把一个'.'替换成'X'。 串的长度和k的范围都是2e5级别。 问:替换完成后,最多有多少个连续的'X'? 题解 公理1:最多替换k次。 公理2:复杂度支持遍历串的所有'.',进行滑动窗口。 性质1:最终替换结果一定是"靠在"
        
阅读全文
 
        
            
    AtCoder Beginner Contest 230 D - Destroyer Takahashi
    
            
摘要:题意 给定N堵墙,一拳超人每次选一个范围攻击,如果某个墙有任意一格在这个范围内,这堵墙就销毁了。 求:最小的挥拳数量 题解 条件1:要打掉所有墙。 条件2:挥拳数量要尽量小。 条件3:一次挥拳只能销毁一定范围内的墙。 性质1:在挥拳数量尽量小的情况下,所有墙必须被销毁。 性质2:如果两次挥拳能够合并
        
阅读全文
 
        
            
    Panasonic Programming Contest 2021(AtCoder Beginner Contest 231) F Jealous Two
    
            
摘要:已知问题 1.第一次看题的时候以为可以给任意一人送任意个礼物,且礼物可以重复送,想不出解法。 2.没有注意到N*A[i]=10^14,那么必须开long long才能统计下来。 题解 题目要求对于A的每一个喜欢的礼物,对于B来说都有一些比这些礼物更好的礼物,但是这些B喜欢的礼物里,只能给B送A没有那
        
阅读全文
 
        
            
    题解 -- 希望
    
            
摘要:方法1 类比除法分块,打表1 -- 1e6,直接用sum解决。可解决n范围为1到1e12的数据。 #include<cstdio> #include<iostream> #include<cmath> #define int long long using namespace std; const 
        
阅读全文
 
        
            
    淘汰赛第三场 赛后总结
    
            
摘要:E 走呀走 二维DP。 #include<cstdio> #include<iostream> #define ll long long using namespace std; ll a[2000][2000]; ll ans[2000][2000]; int main(){ ll n,m; sc
        
阅读全文