竞赛
考级
> 这里是原力C++成员专用的聊天房。欢迎大家前来聊天 > 在这里,你可以: > 1 聊天讨论 > 2 获取资料 > 3 询问问题 > 4 发帖求助 > 但是,不能有以下行为: > 1 发布血腥、暴力、涉政等不良信息 > 2 侵犯他人肖像权、隐私权、名誉权、人格权等权利的信息 > 3 讨论正在进行的竞赛的答案 > 4 侮辱他人、攻击他人、诽谤他人 > 5 其他违规内容 愿我们创造一个和平友爱的聊天环境,互帮互助,聊得开心!愿我们创造一个和平友爱的聊天环境,互帮互助,聊得开心!愿我们创造一个和平友爱的聊天环境,互帮互助,聊得开心!
不许刷屏 否则删除
如图 呃 洛谷是不知道寒假要结束了吗。。。
我敢打赌你解方程一定求出过 x=x 不对给我100万 烧烤摊 大串10元 小串5元 大:(‘ - ‘)——|--(-)-(-)-(-)-(-)-(-)-(-)----------- 小:(‘ - ‘)——|--(-)-(-)-(-)----------- 炒鸡大众的题解: #include <bits/stdc++.h> using namespace std; int main(){ int a,b; cin>>a>>b; cout<<a+b; return 0; } 你一定会
https://www.acgo.cn/application/1997575437593710592
啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊 家人们重磅消息更新啦啊啊啊啊啊啊啊啊啊啊啊采访PPL更啦!!!!!!!点我观看 正式说明: 由于作者去军训了,故没有按时更新,将在开学前更新,保证让大家看到新一期的访谈。 今日,ACGO全新栏目,今日砖访正式开播了,第一期,我们邀请到了cjdst,让我们来揭秘他的生活! Q1:听说你在高考有过大新闻,方便问一下吗? 呜呜呜,这就是人与人的差距吗 Q2:你未来的学业规划? 呜哇啊,人比人气死人! Q3:你的资产? !呜 CJDST 真的非常优秀,这一年来他一直为爱发电,他就是我们的偶像! 作者:复仇者_澜 特别鸣谢:@复仇者_帅童 广子:日记
挑战赛27题解 本次题目的总体难度如下,各位选手可以借此评估一下自身的技术水平 题目编号 题目标题 难度 T1 午枫的矩形 入门 T2 午枫的字符串移动2 入门 T3 午枫打砖块 普及/提高- T4 午枫的子序列之和 普及/提高- T5 午枫的星星树 普及- T6 午枫的数字华容道 普及/提高- T1 午枫的矩形 题目大意 给定一个矩阵,判断这个矩阵的任意子矩阵是否满足 左上角的数+右下角的数≤左下角的数+右上角的数左上角的数+右下角的数\leq 左下角的数+右上角的数左上角的数+右下角的数≤左下角的数+右上角的数 。 解题思路 由于数据范围只有 1≤n,m≤501\leq n,m\leq 501≤n,m≤50 ,所有直接四层循环嵌套枚举左上角和右下角,同时也能知道左下角和右上角的坐标,直接计算判断即可。 参考代码 T2 午枫的字符串移动2 题目大意 给定一个字符串,可以进行左移和右移的操作任意次,找到所有可以得到的字符串中字典序最小以及最大的字符串。 解题思路 因为可以操作任意次,所以只要单独往一个方向不断移动并且更新字典序最小和最大的字符串即可。 这里可以直接使用 string 类型进行移动的操作,并且也可以使用 min 和 max 函数进行比较字典序大小。 参考答案 T3 午枫打砖块 题目大意 给定 nnn 行砖块,每行向右无限延伸并且有且有一段连续的区间为奖励砖,每次可以选择一个区间长度 ddd ,并且将这 ddd 列每行所有的砖块都破坏,奖励砖只要被破坏一个格子就会被全部破坏,求将所有奖励砖都破坏需要的最少操作次数。 解题思路 这是一道经典的贪心问题,在排序时我们会想到,如果破坏一个奖励砖的最右端,那么就会破坏更多的奖励砖,所以我们按照右端点排序,模拟每次打破当前剩余第一个奖励砖的最右端即可。 参考答案 T4 午枫的子序列之和 题目大意 给定一个长度为 nnn 的数组和一个整数 kkk ,求数组 aaa 的所有连续子序列中,元素之和等于 kkk 的个数。 解题思路 首先我们可以预处理前缀和数组 sss ,即需要求区间满足 sr−sl−1=ks_r-s_{l-1}=ksr −sl−1 =k 的区间个数。问题就转化成了非常经典的问题。 枚举区间右端点 rrr ,同时统计已枚举前缀每个 sls_lsl 的个数,那么对于这个 rrr ,对答案贡献为满足 sl−1=sr−ks_{l-1} = s_r - ksl−1 =sr −k 的所有 lll 的个数。那么问题又进一步简化为:统计 si=xs_i = xsi =x 的个数。注意到数据范围无法用桶数组直接记录元素个数,考虑使用离散化或 map 直接统计都可完成。 参考代码 方法一:map 方法二:离散化 T5 午枫的星星树 题目大意 给定一棵树,问是否存在一个点与其他所有点直接相连。 解题思路 记录所有点的度数,判断是否存在一个点的度数为 n−1n-1n−1 即可。 参考代码 T6 午枫的数字华容道 题目大意 有 999 个点 mmm 条边的无向图,其中有 888 个数字放置在不同点上,有一个没有数字的点,可以通过移动将数字移动到相邻没有数字的点上,求最终将数字 1∼81\sim 81∼8 分别放在顶点 1∼81\sim 81∼8 上的最少操作次数。 解题思路 我们可以将 999 个顶点上所存放的数字用字符串表示状态,例如 254806137 表示顶点 111 存放数字 222 ,顶点 222 存放数字 555 ,依此类推,特殊地,数字 000 表示该点为空。那么终点就可以用 123456780 表示。 由于每次移动都会从一种状态变为另一种状态,我们不妨将每种状态看作一个结点,那么所有状态以及状态与状态之间的变换就可以形成一张无向图,于是我们只需要在图上用 bfsbfsbfs 跑最短路即可。由于结点是以字符串表示的,所以可以使用 map 存储从起点状态到达所有状态结点的最短路径长度。 参考代码
题目描述 输入两个浮点数 a , b a,b,输出它们的和。 输入格式 输入两个浮点数以空格分开。 输出格式 一个数,保留两位小数。 输入输出样例 输入#1 复制 1.5 2.3 输出#1 复制 3.80 请问有没有好心人教教我,定关注😘
某位小伙伴的广告 仅供娱乐,严禁模仿 尼们补药在催更啦!更啦! 向官方道个歉,本文内容有抄袭,可联系删除。 今日砖访 VOL.2|潘子涵 关键词:CSP-J 路边一条、腐朽体质、竞赛公平、以文明著称。 个人档案 * 姓名:潘子涵 * 昵称:AAA混泥土批发ppl哥 * 年级:九月份过后出生 * 坐标:浙江温州 * 兴趣爱好:抓作弊,卖混凝土 * 获奖经历:CSP-J 2024 考场上被当路边一条 * 社区主页:围观路边一条 Q1:暑期都在干啥,怎么安排的? 潘子涵: 脏话和谐 + 抓作弊 + 卖水泥 + 看 13×713\times 713×7 + 文明 + 活着 +(按频率递减) Q2:你第一次是怎么知道的?当时是什么吸引你注册的? 潘子涵: 注册可以领鸡蛋,不过要小心吃(因为无法评定好坏) Q3:为什么说你暑假在脏话和谐? 潘子涵: 主包声明一下,本人是个文明人,不喜欢说脏话,也从来没有说过脏话,望周知。 Q4:可以说一下你是怎么管控自己的语言的吗? 潘子涵: Q5:你觉得自己一年内能被CSP-J当成路边一条,最主要的因素是? 潘子涵: 我没加文件读写 Q6:其他小伙伴怎么看待你的脏话和谐? cjdst: Q7:遇到难题时,你一般会怎么处理?是坚持自己想,还是会去看题解或请教别人? 潘子涵: 先看题解,我会逼自己自己看,其他的会先问AI,如果真想不出来就压榨别人。 Q8:你为什么会特别关注ACGO的竞赛公平问题? 潘子涵: 我压线通过了 2024 年 CSP-J 路边一条,却被人举报说作弊,正当我准备荡秋千死亡的时候,屋外却传来一声:"ppl,屋内不许荡秋千!" 然后就一直严抓作弊了 总结: 从小学自学CTJ,到在温州小赛被当成入机,再到CSP-J被当成路边一条与ACGO封号区常客,潘子涵的成长之路,既有“腐朽打败一切”的运气时刻,也有为竞赛公平据理力争的态度。在ACGO,他既是比赛的受害者,也是守护社区风气的脏话和谐青年。或许,这种“随缘但坚持”的风格,正是他未来继续攀登算法高峰的底气所在。
2026.2.28 今天不小心点到一个病毒下载包,里面有360安全卫士、鲁大师、夸克、桌面能手、金山打字通、压缩技术、坤哥图片大全/图库等8个文件,卸载后还把我网络断了,密码改了 2026.3.1 今天是我妈生日,我乱唱生日歌: > 祝你生日倒霉,祝你蛋糕发霉, > 祝你洗澡没水,祝你出门见鬼。 结果……真停水了
不会
有道题的数据好难造 要造一个矩阵f,保证f[i][i]=i,f[i][j]=f[j][i],f[i][f[j][k]]=f[f[i][j]][k]f[i][i]=i,f[i][j]=f[j][i],f[i][f[j][k]]=f[f[i][j]][k]f[i][i]=i,f[i][j]=f[j][i],f[i][f[j][k]]=f[f[i][j]][k]
1+1=2
抽奖3 题目描述 小码超市为了感谢新老客户的鼎力支持和厚爱,在元旦节来临之际,将拿出丰厚的礼品来进行抽奖活动。抽奖规则如下:抽奖箱中装有 n 个小球,编号为 1,2,3....n,每次从箱中抽取一个小球,记录编号后无放回,总共抽取 n 次,请你求出所有可能的抽取情况,若能准确求出,将获得丰厚的大奖。 提示 样例解释: 3次抽奖,输出的为所有可能的情况。 输入格式 一个整数 n(1≤n≤8)。 输出格式 每次抽取的情况,按照字典序从小到大输出。对于每一种情况,占一行,数字之间用一个空格隔开。 样例组输入#1 3 样例组输出#1 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1
#include<bits/stdc++.h> #include<windows.h> #include<conio.h> #include <iostream> using namespace std; class Color { private: HANDLE hConsole; WORD defaultColor; public: Color() { hConsole = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO info; GetConsoleScreenBufferInfo(hConsole, &info); defaultColor = info.wAttributes; } }; int mai0(int fvsjhdvhjsd) { Color color; char l[17][17]; srand(time(0)); int ans=0; printf(" "); Sleep(300); printf("猛"); Sleep(300); printf("攻"); Sleep(300); printf(" "); Sleep(300); printf("&&"); Sleep(300); } int mai1(int hgd) { Color color; srand(time(0)); int ans=0; printf(" "); Sleep(300); printf("猛"); Sleep(300); printf("攻"); Sleep(300); printf(" "); Sleep(300); printf("&&"); Sleep(300); printf(" "); Sleep(300); printf("计"); Sleep(300); printf("时"); Sleep(300); printf("器"); Sleep(300); printf("\n"); Sleep(300); printf(" "); Sleep(300); printf("原"); Sleep(300); printf("创:"); color.red(); // 设置为红色 } const int WIDTH = 20; const int HEIGHT = 15; const int MAX_SNAKE = 100; const int UP = 1; const int DOWN = 2; const int LEFT = 3; const int RIGHT = 4; int snakeX[MAX_SNAKE]; int snakeY[MAX_SNAKE]; int snakeLength = 3; int direction = RIGHT; int foodX, foodY; int score = 0; bool gameOver = false; void hideCursor() { HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_CURSOR_INFO cursorInfo; cursorInfo.bVisible = false; SetConsoleCursorInfo(console, &cursorInfo); } void initGame() { snakeX[0] = WIDTH -19; snakeY[0] = HEIGHT -15; snakeX[1] = WIDTH ; snakeY[1] = HEIGHT ; snakeX[2] = WIDTH; snakeY[2] = HEIGHT; srand(time(0)); foodX = rand() % (WIDTH - 2) + 1; foodY = rand() % (HEIGHT - 2) + 1; } void drawGame() { Color color; system("cls"); for (int i = 0; i < WIDTH; i++) { cout << "#"; } cout << endl; for (int y = 0; y < HEIGHT; y++) { for (int x = 0; x < WIDTH; x++) { if (x == 0 || x == WIDTH - 1) { cout << "#"; } else { bool isSnake = false; for (int i = 0; i < snakeLength; i++) { if (snakeX[i] == x && snakeY[i] == y) { cout << (i == 0 ? "●" : "○"); isSnake = true; break; } } if (!isSnake) { if (x == foodX && y == foodY) { color.green(); cout << "★"; color.white(); } else { cout << " "; } } } } cout << endl; } } void handleInput() { if (_kbhit()) { switch (_getch()) { case 72: if (direction != DOWN) direction = UP; break; case 80: if (direction != UP) direction = DOWN; break; case 75: if (direction != RIGHT) direction = LEFT; break; case 77: if (direction != LEFT) direction = RIGHT; break; case 'q': case 'Q': gameOver = true; break; } } } void moveSnake() { for (int i = snakeLength - 1; i > 0; i--) { snakeX[i] = snakeX[i - 1]; snakeY[i] = snakeY[i - 1]; } if (direction == UP) snakeY[0]--; if (direction == DOWN) snakeY[0]; if (direction == LEFT) snakeX[0]--; if (direction == RIGHT) snakeX[0]; if (snakeX[0] <= 0 || snakeX[0] >= WIDTH - 1 || snakeY[0] < 0 || snakeY[0] >= HEIGHT) { gameOver = true; } for (int i = 1; i < snakeLength; i++) { if (snakeX[0] == snakeX[i] && snakeY[0] == snakeY[i]) { gameOver = true; } } if (snakeX[0] == foodX && snakeY[0] == foodY) { score += 10; snakeLength++; bool foodOnSnake; do { foodOnSnake = false; foodX = rand() % (WIDTH - 2) + 1; foodY = rand() % (HEIGHT - 2) + 1; for (int i = 0; i < snakeLength; i++) { if (snakeX[i] == foodX && snakeY[i] == foodY) { foodOnSnake = true; break; } } } while (foodOnSnake); } } int mai2(int hdr) { initGame(); hideCursor(); while (!gameOver) { drawGame(); handleInput(); moveSnake(); Sleep(300); } system("cls"); cout << "===== 游戏结束 =" << endl; cout << "你的得分: " << score << endl; cout << "================" << endl; cout << "按任意键关闭窗口" << endl; cout << "尤其鸣谢豆包(www.doubao)" << endl; system("pause"); } int main() { while(true) { }
florr
—————————————————————————————————————————————— —————————————————————————————————————————————— —————————————————————————————————————————————— —————————————————————————————————————————————— 1.消灭船员,一次只需两颗子弹(doge) 2.打倒中立帝国主义!嚯嚯哈嘿!
难度有点超标啊,只过了第三题……
florr.io
共24509条