avatar
文章
30
标签
25
分类
8
首页
时间轴
标签
分类
追番
友链
尔玉ACgame 返回首页
首页
时间轴
标签
分类
追番
友链

ACgame

发表于2021-12-13|更新于2024-10-13
|总字数:16|阅读时长:1分钟|浏览量:

一个简单的小游戏

网址

https://app279.acapp.acwing.com.cn/

文章作者: 尔玉
文章链接: http://eryu.fun/posts/68fab463.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 尔玉!
AcWinggame
cover of previous post
上一篇
校赛题解
2021校赛:感受:​ 校赛算是选拔蓝桥杯省赛,但是这次题目给了1道签到题+两道语法题+2道算法题(可以保证基本没人写出来的那种)。所以导致只要语法有基础+手速够快就能得奖并且获得蓝桥杯参赛资格。 ​ 然而,因为最后一题因为数据问题(过于氵),导致只要稍微有点思路就能AC,但其实正解没有人写出来,所以这次的校赛其实真的氵。 题解: 等级:语法题解析:​ 从最后一天剩一个开始向前推,每向前一天+1然后*2,总共n-1天。 ​ 一个for循环就行。 代码:12345678910111213141516171819202122232425262728//c#include<stdio.h>int main(){ int n; scanf("%d",&n); int sum=1; for(int i=1;i<n;i++) { sum=(sum+1)*2; } printf("%d"sum); return 0;}//c++#include<iostream...
cover of next post
下一篇
差分
差分 差分相当于前缀和的逆运算。 目的:数组中一段数+x时间复杂度降低 具体做法:假设一个数组的前缀和为原数组 一维差分: 预处理: 1234567int a[N],b[N];/*(1)*/for(int i=1;i<=n;i++)b[i]=a[i]-a[i-1];/*(2)*/for(int i=1;i<=n;i++){ b[i]+=a[i]; b[i+1]-=a[i];} 添加数: 1234567int l,r,c;while(m--){ cin>>l>>r>>c; b[l]+=c; b[r+1]-=c;} 二维差分: 差分函数: 1234567void insert(int x1,int y1,int x2,int y2,int c){ a[x1][y1]+=c; a[x2+1][y1]-=c; a[x1][y2+1]-=c; a[x2+1][y2+1]+=c;} 预处理: 12for(int i=1;i<=n;i...
相关推荐
cover
2023-02-18
1230. K倍区间
1230. K倍区间原题链接 思路前缀和应用正常想法O(n^2)求前缀和后根据端点遍历另一个端点。 想到求余数(性质)可优化到O(n)前缀和是a1ai的和,那么a? ~ ai的和的余数为0只要a1a?的余数等于a? ~ai的余数即可。 所以用一个新数组存前缀和余数,然后直接根据判断满足的个数即可。 相当于优化掉了根据端点遍历另一个端点的时间。注意LL问题(a[i]要用LL,我这里%k了可以不用)代码1234567891011121314151617181920212223#include<bits/stdc++.h>using namespace std;const int N = 1e5 + 10;int n, k;int a[N], c[N];int main(){ cin >> n >> k; for(int i = 1; i <= n; i ++) { cin >> a[i]; a[i] = (a[i] + a[i - 1]) % k; }...
cover
2023-02-15
3956. 截断数组
3956.截断数组原题链接 思路截两段,三数组各元素和相等。 求截断方法数。 判断特殊情况 输入时求总数sum,sum不是3的倍数直接输出0结束。 sum为0时,公式求解。 记得long long。 前缀和求a[1] ~ a[i]是多少,求等于sum/3和sum/3*2的个数 从头到尾求方案数 事件复杂度:O(n) 代码123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263#include<bits/stdc++.h>using namespace std;const int N = 1e5 + 10;int a[N];int main(){ int n; cin >> n; int sum = 0; for(int i = 1; i <= n; i ++) { cin >> a[i]...
cover
2023-04-04
4275. Dijkstra序列
4275.Dijkstra序列原题链接 思路Dijkstra板子改改(内部判断一下能否实现即可) 代码1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768#include<bits/stdc++.h>using namespace std;const int N = 1010;int g[N][N];int dist[N];bool st[N];int fl[N];int n,m,k;bool dj(){ memset(dist, 0x3f, sizeof dist); //这里st忘了复原了,所以我当时出错。 memset(st, 0, sizeof st); dist[fl[1]] = 0; for(int t = 1; t <= n; t ++) { // 我的写法 int ...
cover
2022-03-02
95.费解的开关
95.费解的开关AcWing 95. 费解的开关 你玩过“拉灯”游戏吗? 25盏灯排成一个 5×5的方形。 每一个灯都有一个开关,游戏者可以改变它的状态。 每一步,游戏者可以改变某一个灯的状态。 游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。 我们用数字 1表示一盏开着的灯,用数字 0表示关着的灯。 下面这种状态 123451011101101101111000011011 在改变了最左上角的灯的状态后将变成: 123450111111101101111000011011 再改变它正中间的灯后状态将变成: 123450111111001110011010011011 给定一些游戏的初始状态,编写程序判断游戏者是否可能在 6步以内使所有的灯都变亮。 输入格式第一行输入正整数 n,代表数据中共有 n个待解决的游戏初始状态。 以下若干行数据分为 n组,每组数据有 5 行,每行 5个字符。 每组数据描述了一个游戏的初始状态。 各组数据间用一个空行分隔。 输出格式一共输出 n行数据,每行有一个小于等于 6的整数,它表示对于输入数据中对应的游戏状态...
cover
2023-03-30
3777. 砖块(每日一题)
AcWing 3777. 砖块(每日一题)原题链接 思路1.审题:判断出当B砖和W砖都为奇数个时不成立每次翻转会使两个砖变为另一种颜色或两个砖交换颜色。所以颜色都为奇数个时将无法翻转成同一种颜色。 2.暴力 + 判暴力复杂度思路:分别判断全为B或全为W时需要多少步。 方法: 从左到右==-1个==判断是否为需要颜色,不是就翻一下它和它后面的(-1的由来)。 判断最后一个和前面颜色是否相同,不同则选择另一个(下题解将此总数+1e7保证选到另一个) 时间复杂度:O(nt)(t组数,n操作数) 代码12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970#include<bits/stdc++.h>using namespace std;const int N = 210;int n,m;string s,cp;int num1...
cover
2021-09-11
STL
STL简记
avatar
尔玉
前事不忘,后事之师
文章
30
标签
25
分类
8
Follow Me
公告
This is my Blog
最新文章
测试文章12025-11-23
测试文章12025-11-23
测试文章12025-11-23
du - 查看磁盘使用情况2024-10-21
环境配置 - 深度学习2024-10-20
© 2020 - 2025 By 尔玉