有任何问题 直接联系QQ:475517977

喵哈哈村的代码传说 第一章 冒泡排序

第一题就是排序嘛,在ACM/OI竞赛中,我只推崇一种排序方法,就是直接调用algorithm里面的sort函数。

#include<bits/stdc++.h>
using namespace std; int main(){
int n;
while(cin>>n){
vector<int> V;
for(int i=0;i<n;i++){
int p;
scanf("%d",&p);
V.push_back(p);
}
sort(V.begin(),V.end());
for(int i=0;i<n;i++)
cout<<V[i]<<" ";
cout<<endl;
}
}

喵哈哈村的代码传说 第二章 神经网络

这道题实际上就是考察你知不知道异或。

如果相同就输出0,否则输出1就好了。

#include<bits/stdc++.h>
using namespace std;
string a,b;
int n; int main(){
while(cin>>n){
cin>>a>>b;
for(int i=0;i<n;i++){
if(a[i]==b[i])cout<<"0";
else cout<<"1";
}
cout<<endl;
}
}

喵哈哈村的代码传说 第三章 宽度优先搜索

BFS的裸题嘛,如果你不会代码,那就仔细研读我的代码吧。

#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e3+6;
int n,m,x0,yy0,x1,yy1;
int mp[maxn][maxn];
string s[maxn];
int dx[4]={1,-1,0,0};
int dy[4]={0,0,1,-1};
int check(int x,int y){
if(x<0||x>=n)return false;
if(y<0||y>=m)return false;
if(mp[x][y]!=-1)return false;
if(s[x][y]=='0')return false;
return true;
}
void solve(){
x0--,yy0--,x1--,yy1--;
for(int i=0;i<n;i++)
cin>>s[i];
memset(mp,-1,sizeof(mp));
queue<int> QX,QY;
QX.push(x0);
QY.push(yy0);
mp[x0][yy0]=0;
while(!QX.empty()){
int nowx=QX.front();
int nowy=QY.front();
QX.pop(),QY.pop();
for(int i=0;i<4;i++){
int nex=nowx+dx[i];
int ney=nowy+dy[i];
if(check(nex,ney)){
mp[nex][ney]=mp[nowx][nowy]+1;
QX.push(nex);
QY.push(ney);
}
}
}
printf("%d\n",mp[x1][yy1]);
return;
}
int main(){
while(cin>>n>>m>>x0>>yy0>>x1>>yy1)
solve();
return 0;
}

喵哈哈村的代码传说 第四章 并查集

这道题就是并查集的题目,就是裸的并查集。

    #include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5+6;
int n,m;
int fa[maxn];
int fi(int x){
return fa[x]==x?x:fa[x]=fi(fa[x]);
}
int uni(int x,int y){
x = fi(x),y = fi(y);
fa[x]=y;
}
void solve(){
for(int i=1;i<=n;i++)fa[i]=i;
for(int i=0;i<m;i++){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a==1){
uni(b,c);
}else{
if(fi(b)==fi(c)){
cout<<"Yes"<<endl;
}else{
cout<<"No"<<endl;
}
}
}
}
int main(){
while(cin>>n>>m)solve();
}

喵哈哈村的代码传说 第五章 找规律

多校原题。Sg函数的裸题。

sg[0]=0

当x=8k+7时sg[x]=8k+8,

当x=8k+8时sg[x]=8k+7,

其余时候sg[x]=x;(k>=0)

#include <bits/stdc++.h>

using namespace std;

int main()
{
int T,n;
scanf("%d",&T);
while(T--)
{
int ans=0;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
int x,sg;
scanf("%d",&x);
if(x%8!=0&&x%8!=7)
sg=x;
else
if(x%8==0) sg=x-1;else sg=x+1;
ans^=sg;
}
if(ans) printf("First player wins.\n");else printf("Second player wins.\n");
}
return 0;
}

打表找规律可得,数学归纳法可证

喵哈哈村的魔法考试 Round #6 (Div.3) 题解的更多相关文章

  1. 喵哈哈村的魔法考试 Round #2 (Div.2) 题解

    喵哈哈村的魔法考试 Round #2 (Div.2) 题解 A.喵哈哈村的战争 题解: 这道题就是for一遍,统计每个村子的战斗力的和,然后统计哪个村子的战斗力和大一点就好了. 唯一的坑点,就是这道题 ...

  2. 喵哈哈村的魔法考试 Round #1 (Div.2) 题解

    喵哈哈村的魔法考试 Round #1 (Div.2) 题解 特别感谢出题人,qscqesze. 也特别感谢测题人Xiper和CS_LYJ1997. 没有他们的付出,就不会有这场比赛. A 喵哈哈村的魔 ...

  3. 喵哈哈村的魔法考试 Round #7 (Div.2) 题解

    喵哈哈村的魔法考试 Round #7 (Div.2) 注意!后四道题来自于周日的hihocoder offer收割赛第九场. 我建了个群:欢迎加入qscoj交流群,群号码:540667432 大概作为 ...

  4. 喵哈哈村的魔法考试 Round #1 (Div.2) 题解&源码(A.水+暴力,B.dp+栈)

    A.喵哈哈村的魔法石 发布时间: 2017年2月21日 20:05   最后更新: 2017年2月21日 20:06   时间限制: 1000ms   内存限制: 128M 描述 传说喵哈哈村有三种神 ...

  5. 喵哈哈村的魔法考试 Round #19 (Div.2) 题解

    题解: 喵哈哈村的魔力源泉(1) 题解:签到题. 代码: #include<bits/stdc++.h> using namespace std; int main(){ long lon ...

  6. 喵哈哈村的魔法考试 Round #14 (Div.2) 题解

    喵哈哈村的四月半活动(一) 题解: 唯一的case,就是两边长度一样的时候,第三边只有一种情况. #include <iostream> #include <cstdio> # ...

  7. 喵哈哈村的魔法考试 Round #4 (Div.2) 题解

    有任何疑问,可以加我QQ:475517977进行讨论. A 喵哈哈村的嘟嘟熊魔法(1) 题解 这道题我们只要倒着来做就可以了,因为交换杯子是可逆的,我们倒着去模拟一遍就好了. 有个函数叫做swap(a ...

  8. 喵哈哈村的魔法考试 Round #20 (Div.2) 题解

    题解: A 喵哈哈村的跳棋比赛 题解:其实我们要理解题意就好了,画画图看看这个题意.x<y,那么就交换:x>y,那么x=x%y. 如果我们经过很多次,或者y<=0了,那么就会无限循环 ...

  9. 喵哈哈村的魔法考试 Round #18 (Div.2) 题解

    喵哈哈村的古怪石碑(一) 题解:暴力check一下是等比数列还是等差数列,然后输出答案即可.注意如果数据范围是1e9的话,就要快速幂了. 代码: #include <cstdio> #in ...

  10. 喵哈哈村的魔法考试 Round #13 (Div.2) 题解

    喵哈哈村的木星传说(一) 旋转90°,找找规律就知道(x,y)->(n-1-y,x) 然后输出就好了. #include<bits/stdc++.h> using namespace ...

随机推荐

  1. 【洛谷P2420】让我们异或吧

    题目描述 异或是一种神奇的运算,大部分人把它总结成不进位加法. 在生活中…xor运算也很常见.比如,对于一个问题的回答,是为1,否为0.那么: (A是否是男生 )xor( B是否是男生)=A和B是否能 ...

  2. python技巧 is 和 ==

    is 判断变量是否指向同一个对象 == 判断变量引用的对象是否相等 In [2]: a=[1,2] In [3]: b=a In [4]: a == b Out[4]: True In [5]: a ...

  3. 第10月第1天 storyboard uitableviewcell

    1. 如图,我们在Cell的属性界面对其进行了注册,identifier 为"TableViewCell" 不需要在 ViewDidLoad 对其进行注册了,如果进行注册的话,则对 ...

  4. PCA和白化练习之处理二维数据

    在很多情况下,我们要处理的数据的维度很高,需要提取主要的特征进行分析这就是PCA(主成分分析),白化是为了减少各个特征之间的冗余,因为在许多自然数据中,各个特征之间往往存在着一种关联,为了减少特征之间 ...

  5. 使用phpstorm+wamp实现php代码实时调试审计

    转载自:https://www.bugbank.cn/q/article/5853afaffc0bf4f010ee6ac3.html php调试有N多好用的工具,最近研究到phpstorm配合wamp ...

  6. 基于Disruptor并发框架的分类任务并发

    并发的场景 最近在编码中遇到的场景,我的程序需要处理不同类型的任务,场景要求如下: 1.同类任务串行.不同类任务并发. 2.高吞吐量. 3.任务类型动态增减. 思路 思路一: 最直接的想法,每有一个任 ...

  7. python模块分析之time和datetime模块

    前言 我们使用time和datetime模块的主要目的是对时间戳.时间字符串.时间元组等时间的表述对象进行相互的转化.而我们平时编码涉及两个时间:一个是上海时间,也可以说是北京时间,一个是UTC时间, ...

  8. vim命令学习

    文本编辑器vim vim常用操作 vim是一个强大的全屏幕文本编辑器,是Linux上最常用的文本编辑器,它的作用是建立,编辑,显示文本文件. vim没有菜单,只有命令. 输入a或i或o进入编辑命令,下 ...

  9. JS windows.open打开窗口并居中

    function openWin() {            var url='Add.aspx';                             //转向网页的地址;           ...

  10. LeetCode(11):盛最多水的容器

    Medium! 题目描述: 给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) .画 n 条垂直线,使得垂直线 i 的两个端点分别为 (i, ai) 和 (i, ...