蓝桥杯
85785857
这个作者很懒,什么都没留下…
展开
-
【第八届蓝桥杯】方格分割
6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。如图就是可行的分割法。试计算:包括这3种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。非常巧妙的暴力dfs:#include<bits/stdc++.h>using namespace std;int dx[]={-1,0,1,0};int dy[]={0,1,0,-1};int a[10][10];int res;void dfs(int x,int y){ if(原创 2022-04-03 20:40:51 · 446 阅读 · 0 评论 -
【第十二届蓝桥杯】砝码称重
经典DP问题:#include<bits/stdc++.h>using namespace std;#define int long longint N;int w[105];int dp[100005];int ans;signed main(){ scanf("%lld",&N); for(int i=1;i<=N;i++) cin>>w[i]; for(int i=1;i<=N;i++) for(int j=...原创 2022-01-21 19:09:21 · 360 阅读 · 0 评论 -
【第十二届蓝桥杯】左儿子右兄弟
今天我们来看一道有关树的递归题。(这几天被动归吊打55555,看道递归解解闷)递归题大多是写法比较简洁,思路比较巧妙,这一道题也不例外。闲话少说,我们来看一下原题:首先,我们来介绍一下所谓“左孩子右兄弟”表示方法。(如果已经了解可以直接跳过)对于一棵普通的树,我们可以通过一套操作将它转化为二叉树,1.找到所有孩子数>2的父节点2.将它的孩子节点相连3.父节点只保留一个连向孩子节点(通常是最左边的)的边,其余所有边全部删去4.整理一下,原来就有的边作为左指树,新加的边原创 2022-01-05 23:30:16 · 3745 阅读 · 5 评论 -
【第八届蓝桥杯】魔法旋转问题
这一次的题非常有意思,咋一看难度挺大的,其实也是纸老虎。我觉得如果把这一题搞明白,会玩魔方的各位可以尝试着用电脑还原魔方,有能力还可以写个界面(狗头)闲话少说,看题!问题描述 魔方可以对它的6个面自由旋转。 我们来操作一个2阶魔方,如图:为了描述方便,我们为它建立了坐标系。 各个面的初始状态如下: x轴正向:绿 x轴反向:蓝 y轴正向:红 y轴反向:橙 z轴正向:白 z轴反向:黄 假设我们规定,只能对该魔方进行3种操作。分别标记为: x原创 2022-01-06 14:14:18 · 1699 阅读 · 1 评论 -
【第十二届蓝桥杯】双向排序
#include<bits/stdc++.h>using namespace std;int n,m;struct action{ int p,q; action(int x,int y):p(x),q(y){}};vector<action> v;int ans[100005];int main(){ scanf("%d%d",&n,&m); for(int i=0;i<m;i++) { int p,q; sca...原创 2022-01-08 15:30:46 · 2453 阅读 · 2 评论