好吧我还是第一次写这种总结类的玩意…

考场心情…hmm…我没睡醒。是的是这样的,反正题都有两三个看错了或者没看懂…

最关键的是!!我!居!然!把!Freopen!写!在!了!程!序!最!后!

然后就和谐愉快欢乐的爆0了。

好的那么来记录一下这次0分考试叭…

A. 【NOIP2018普及级别模拟】数池塘

第一眼望去…好的老师你放水了…这个很显然…

一定是在学搜索的时候玩的模板级水题…

脑海里盘旋起了明老师的重庆话…“到边边儿~跳出来~每张牌牌挨到来!手中牌,插进来,千万莫忘要收牌~”

好的。深搜认定。

#include<iostream>
using namespace std;
bool a[][];
int total=;
int n,m;
void search(int x,int y){
if(x>n||y>m||x<||y<){
return;
}
if(a[x][y]==false){
return;
}
if(a[x][y]){
a[x][y]=false;
search(x+,y);
search(x-,y);
search(x,y-);
search(x,y+);
search(x+,y+);
search(x-,y-);
search(x+,y-);
search(x-,y+);
     //a[x][y]=true;
}
}
int main(){ cin>>n>>m;
char index='a';
for(int i=;i<=n;i++){
for(int j=;j<=m;j++){
cin>>index;
if(index=='W'){
a[i][j]=true;
}
}
}
for(int i=;i<=n;i++){
for(int j=;j<=m;j++){
if(a[i][j]){
total++;
search(i,j);
}
}
}
cout<<total;
}

无非就是像染色一样,找到一个W就把他周围所有的W全染成“.”,记得count就好了。

但是发觉我一“收牌”丫就RE了,于是就注释了a[x][y]=true;

然后就愉快的拿到了保底分AC…

B. 【NOIP2018普及级别模拟】接苹果

我还真不知道奶牛爱吃苹果。

好吧,第一反应——老师老师我知道!这题是标准的动态规划!!

第二反应——啊,DF是怎么玩的来着…忘…掉…了…

于是就直接0了。

之后去翻洛谷的题解,恍然大悟。

哇!原来不止我一个人喜欢盲起搜索!

//来源洛谷题解  已经完全理解,并可以重构。
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
int n, w, a[], f[][][];
int dfs(int i,int j,int k)
{
if (i > n)return ;
if (f[i][j][k] != -)return f[i][j][k];
int tmp1 = , tmp2 = ;
if (k < w && a[i] != j)
tmp1 = dfs(i + , - * j + , k + ) + ;
tmp2 = dfs(i + , j, k) + (j == a[i] ? : );
return f[i][j][k] = max(tmp1, tmp2);
}
int main()
{
//freopen(" .in","r",stdin); //朕就是今天在这里傻不兮兮的把freopen写到了程序末尾才爆了0……
//freopen(" .out","w",stdout);
cin >> n >> w;
for (int i = ; i <= n; i++)
cin >> a[i];
memset(f, -, sizeof(f));
cout << dfs(, , );
}

看完题解才觉得“其实我可以的!”

好吧,在某一时间中,我们只有两种选择:

1.跑到另一棵树

2.待在原地不要动

于是就有了tmp1与tmp2这种神奇的小别致。如果这个时刻我们不动都可以拿到一个苹果,那我肯定不走呀!!然后我们比较一下两种可能谁更大就好了。i表示时刻点,j表示所在树,k表示移动的次数。

C. 【NOIP2018普及级别模拟】.找数

这题我不想说什么,为我的神志不清开心的拍起肚皮

分明是刚学都能会的…我硬生生看成了求第K小的数…

还细心地帮他去了个重…(然而并不用)

不如先欣赏一下这个智障操作好了…

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
const int MAXN=;
int xu[MAXN];
bool qc[MAXN];
int k,n;
int main(){
int x;
scanf("%d%d",&n,&k);
k++;
for(int i=;i<=n;i++){
scanf("%d",&x);
if(qc[x]==false){
xu[++xu[]]=x;
qc[x]=true;
}
}
sort(xu+,xu++xu[]);
printf("%d",xu[k]);
//freopen("find.in","r",stdin);
// freopen("find.out","w",stdout);
}

啊,仿佛还能嗅得到当时脑子里的海鲜味。

#include<bits/stdc++.h>
//代码源自WKJ,已经理解并可以重构
using namespace std;
int n,k;
int a[];
bool cmpy(int x,int y){
return x>y;
}
int main(){
// freopen("find.in","r",stdin);
// freopen("find.out","w",stdout);
scanf("%d%d",&n,&k);
for(int i=;i<=n;i++)scanf("%d",&a[i]);
sort(a+,a+n+,cmpy);//所以说是第几大…我还以为是算第几小…
printf("%d",a[k]);
return ;
}

D. 【NOIP2018普及级别模拟】最短路线

这题我依然没有AC…因为据说涉及到高精度压位,懵逼着呢。等会钻研一下。

不过经过指点过后,明白这东西是用DP的,然而并没加高精度。先上下代码

#include<bits/stdc++.h>
using namespace std;
long long m,n,dp[][];
int main(){
// freopen("sline.in","r",stdin);
// freopen("sline.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=;i<=m;i++)dp[i][]=;
for(int j=;j<=n;j++)dp[m][j]=;
for(int i=m-;i>=;i--)
for(int j=;j<=n;j++)if(i!=m&&j!=)dp[i][j]=dp[i+][j]+dp[i][j-];
cout<<dp[][n];
return ;
}

并不可以AC…

E. 【NOIP2018普及级别模拟】生成树

第一眼依然没看懂题,我的想法“难道要模拟?那这数据量稳稳爆炸啊,思路有问题可能”

然后就0了…好吧,或许骗个分也不错的应该。

后期讲解这是有规律可循的,加个快速幂就可以AC。

#include<bits/stdc++.h>
using namespace std;
long long n,k,ans=;
//发现规律,然后使用快速幂
long long qsort(long long x,long long y){
while(y){
if(y&)ans=ans*x%k;
x=x*x%k;
y>>=;
}
return ans;
}
int main(){
cin>>n>>k;
if(n==){cout<<;return ;}
if(k==){cout<<-;return ;}
if(n==){cout<<;return ;}
cout<<qsort(n%k,n-);
return ;
}

NOIP2019普及级别模拟 3.30校模拟的更多相关文章

  1. JZOJ 5185. 【NOIP2017提高组模拟6.30】tty's sequence

    5185. [NOIP2017提高组模拟6.30]tty's sequence (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB ...

  2. hdu6034[模拟] 2017多校1

    /*hdu6034[模拟] 2017多校1*/ //暴力模拟26个26进制数即可, 要注意进位 #include<bits/stdc++.h> using namespace std; t ...

  3. 5.30 NOI 模拟

    $5.30\ NOI $模拟 高三大哥最后一次模拟考了,祝他们好运 \(T1\)装箱游戏 显然可以将四种字母之间的空缺当做状态枚举 那么这道题就很显然了 #include<bits/stdc++ ...

  4. NOIP2012 普及组真题 4.13校模拟

    考试状态: 我今天抽签看了洛谷的… 这我能怂???凶中带吉,我怕考试??我!不!怕! 看着整个机房的男同学们,我明白我是不会触发我的忌了.很好,开刷. A. [NOIP2012普及组真题] 质因数分解 ...

  5. 洛谷 P5661 公交换乘 & [NOIP2019普及组] (模拟)

    传送门 解题思路 先把所有的数据读下来. 对于地铁,答案直接加,然后把编号放入一个数组a内. 对于公交车,从前往后枚举a数组,然后找到出现最早的且符合价钱大于等于公交车的价钱,然后把这个数删除(变为0 ...

  6. NOIP模拟83(多校16)

    前言 CSP之后第一次模拟赛,感觉考的一般. 不得不吐槽多校联测 OJ 上的评测机是真的慢... T1 树上的数 解题思路 感觉自己思维有些固化了,一看题目就感觉是线段树. 考完之后才想起来这玩意直接 ...

  7. [NOIP2018校模拟赛]T1 阶乘

    题目: 描述 有n个正整数a[i],设它们乘积为p,你可以给p乘上一个正整数q,使p*q刚好为正整数m的阶乘,求m的最小值. 输入 共两行. 第一行一个正整数n. 第二行n个正整数a[i]. 输出 共 ...

  8. 10.30 NFLS-NOIP模拟赛 解题报告

    总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没 ...

  9. HDU5399-多校-模拟

    Too Simple Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

随机推荐

  1. 大数据框架-Hbase

    大规模结构化集群存储数据库.Table中的所有行都按照row key的字典序排列. 主键:row Key.访问行只能通过rowKey访问(范围或者准确值),或者全表扫描: 列族:cloumn fami ...

  2. ZooKeeper系列(3)--基于ZooKeeper实现主从协作

    基于ZooKeeper实现主从协作 主-从模式的模型中,主要包括三个角色: 主节点:主要负责监视新的节点和任务,分配任务给可用的从节点; 从节点:通过注册自己,确保主节点看到它们可以执行任务,收到主节 ...

  3. 轻量ORM-SqlRepoEx (七)AspNetCore应用

    ORM-SqlRepoEx 是 .Net平台下兼容.NET Standard 2.0,一个实现以Lambda表达式转转换标准SQL语句,使用强类型操作数据的轻量级ORM工具,在减少魔法字串同时,通过灵 ...

  4. Linux -- 用户篇

    Linux -- 用户与用户组 1.Linux 系统中有三种角色:所有者(用户),用户组与其他人,一张图可以说明用户与用户组的关系. 如图,某公司相当于一个用户组,该用户组下有A,B两个用户,用户拥有 ...

  5. 一个hibernate中的异常:NonUniqueDiscoveredSqlAliasException

    在hibernate中用SQL查询返回的结果集中,列名或别名必须唯一,否则会报下面的错误.返回的结果集中,列名或别名可以没有,但只能有一列没有. //空别名重复的情况:org.hibernate.lo ...

  6. 【读书笔记 - Effective Java】02. 遇到多个构造器参数时要考虑用构建器

    类有多个可选参数的解决方案: 1. 重叠构造器模式可行,但是当有许多参数的时候,客户端代码会很难编写,并且仍然较难以阅读. 2. JavaBeans模式,调用一个无参构造器来创造对象,然后调用sett ...

  7. Lavavel5.5源代码 - RedisQueue是怎么实现

    队列的基本功能: 1.立即执行:yes 2.延迟执行:yes 3.保证至少执行一次:yes 4.必须执行且最多执行一次:no 用到的数据结构: list.Sorted sets 延迟执行的机制: 1. ...

  8. Java实例 Part2:Java语言基础

    Part2:Java语言基础 ** Example01:从控制台接收输入字符 ** 运行结果: 实现代码: import java.util.Scanner; public class Example ...

  9. JS第一周学习笔记整理

    目录 JS正式课第一周笔记整理 JS正式课第一周笔记整理 webstorm : 代码编辑器 浏览器: 代码解析器: Git : 是一个工具;用于团队协作开发项目管理代码的工具:在工作中用git.svn ...

  10. RMI入门HelloWorld

    java RMI(Remote Method Invocation)是一种基于java远程调用技术,是对RPC的java实现,可以在不同主机上进行通信与方法调用.PRC通信原理如图: 方法调用从客户对 ...