NOIP2017 D1T2时间复杂度】的更多相关文章

题目传送门:洛谷P3952 大模拟不解释 #include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #include<queue> using namespace std; int T; int main() { cin>>T; for(; T--;) { ; scanf("%d",…
这道题在考试时看到感觉与第一题放反了位置(因为我还没有看到第一题是结论题) 对于每个语句进行栈的模拟,而如果有语法错误就特判. 对于每一条for语句我们将其与栈顶元素连边,复杂度是1的我们不用考虑,如果复杂度是n我们就算他的贡献加一. 这样我们求最大复杂度就相当于求一颗子树的最大深度,当然如果这条语句不合法我们就将其整颗子树贡献算为0. #include<bits/stdc++.h> using namespace std; int top; struct node { int to,nex;…
题目大意:略 题解:模拟 卡点:1.数组忘清空 (考场代码风格独特...) C++ Code: #include<cstdio> #include<cstring> #include<iostream> using namespace std; const int inf=2000; int T,n,F,E,top,ls,ans,temp,can,w; char ch,s[10000]; string p; bool pd,halt,llw[10000]; bool r…
noip2017 D1T2 时间复杂度 某zz选手考场上写了1.5h 考完之后发现自己写的是错的 但是结果A了??? 题目大意: 一种新的编程语言 A++ 给出一个程序只有循环语句 并给出这个程序的时间复杂度 判断每个程序给出的时间复杂度是否正确. A++语言的循环结构如下: F i x y 循环体 E 其中F i x y表示新建变量i(变量i不可与未被销毁的变量重名)并初始化为 x 然后判断 i 和 y 的大小关系,若 i 小于等于 y 则进入循环 否则不进入 每次循环结束后 i 都会被修改成…
[SinGuLaRiTy-1048] Copyright (c) SinGuLaRiTy 2018. All Rights Reserved. NOIP2017过了这么久,现在2018了才找到寒假这么一个空挡来写题解.哎,没办法,谁叫学校抓的紧呢. 序 | Before 这是我的最后一次NOIP. 因为是最后一次的原因吧,考前压力就蛮大的,再加上各种模拟赛,模板练习的轮番轰炸,走进考场时整个人都是“飘飘欲仙”的感觉~ 我的NOIP2017就在这种“飘飘欲仙”的氛围下开始了. 游记 | Blogs…
QAQ--由于没报上名并没能亲自去,自己切一切题聊以慰藉吧-- 可能等到省选的时候我就没有能力再不看题解自己切省选题了--辣鸡HZ毁我青春 D1T1 小凯的疑惑 地球人都会做,懒得写题解了-- D1T2 时间复杂度 分类讨论+递归就行了,没啥思维含量,略. D1T3 逛公园 这题好劲啊-- 看见\(k\le 50\)应该能想到这是一个\(O((n+m)k)\)的DP,由于题目要求的是比最短路长度长至多\(k\)的路径条数,因此状态定义应该是定义\(f_{i,j}\)表示从\(i\)走到终点,长度…
终于做完了…… 场上预计得分:?(省一分数线:295) 由于看过部分题解所以没有预计得分qwq 题解: D1T1 小凯的疑惑 题面 震惊!一道小学奥数题竟难倒无数高中考生! 欢迎大家以各种姿势*和谐*出题人 证明见这篇博客 #include<algorithm> #include<iostream> #include<cstring> #include<cstdio> #include<cmath> #include<queue> #…
noilinux@Capella:~$ cd /Memories/ noilinux@Capella:/Memories$ rm *SXOI* rm:是否删除有写保护的普通文件 "SXOI2018 游记.md"? Y rm: 无法删除"SXOI2018 游记.md": 权限不够 noilinux@Capella:/Memories$ ls *SXOI* SXOI2018 游记.md noilinux@Capella:/Memories$ cat SXOI2018\…
[题目传送门:]戳 [描述:] 在计算机上看到文件系统的结构通常很有用.Microsoft Windows上面的"explorer"程序就是这样的一个例子.但是在有图形界面之前,没有图形化的表示方法的,那时候最好的方式是把目录和文件的结构显示成一个"图"的样子,而且使用缩排的形式来表示目录的结构.比如: ROOT | dir1 | file1 | file2 | file3 | dir2 | dir3 | file1 file1 file2 这个图说明:ROOT目录…
NOIP 2017 试题研究 D1T1 小凯的疑惑 (45 min) 看到题面,大概是推数学公式. 先打暴力表,观察 \(a,b\) 与 \(n\) 的关系.猜想 \(a×b−a−b\). 引理:对于正整数 \(p , q\) 满足 \(\gcd(p, q) = 1\), 使得 \(px + qy = n\) 无非负整数解的最大正整数 \(n\) 为 \(pq - p - q\). 使用反证法证明,即假设存在正整数 \(x\) 和 \(y\) 使得 \(px + qy = pq - p - q\…
对了我在这里必须讲一个非常重要的事情,就是前天也就是$2019.8.21$的傍晚,我决定重新做人了$!!$ 其实之前没怎么做$Noip$题,那就从现在开始叭…
NOIp2018RP++! 虽然没去但还得写写QAQ D1T1 : 小凯的疑惑 数学题 手推几组数据然后发现规律 \(Ans = (a-1)(b-1)+1\) AC in 1minite D1T2 : 时间复杂度 %^%^#%&$#%$#^^$&#^^%$&&%**(^%&^%^$*^&%*#&^%&^*&$^&%$&#^&%^&^$&%$^%$^%^%&#&*$&*^&…
恶心的模拟题,考场上犯了一堆错误,多组数据清空没清完.数组开小...民间都是50分,结果CCF90.. 考完后随便改改就过了,还好只少了10分,如果真的是50,我估计会疯掉. 因为考场的时候没写好,所以最终的代码也很难看. #include<bits/stdc++.h> using namespace std; ],p[],fnum,stack_num,sck[],sck_num; ],ch[],res[]; inline void init() { memset(p,,sizeof(p));…
[Luogu 3952] NOIP2017 时间复杂度 一年的时间说长不长,说短,也不短. 一年之内无数次觉得难得可怕的题目,原来也就模拟这么回事儿. #include <cstdio> #include <iostream> #include <set> #include <stack> #include <string> int T; struct Layer { std::string name; int state; Layer(std:…
写了两三个小时,麻烦倒是不麻烦,要考虑清楚,想全了 只过了样例提交是不是傻,要自己造数据 数据不大可以用STL 建议自己刚一下,不看代码 #include <iostream> #include <stack> #include <cstring> #include <cstdio> using namespace std; int n; char a[200][200]; int fuzadu; int vis[30]; struct node { int…
原本只是想看下多久能码完时间复杂度 然后在30min内就码完了,然后一A了???? 首先,这题完全可以离线做 我们先把所有的操作读完,判断合不合法之后,再去判断和标准答案的关系 具体而言 把所有的操作读完之后 对于$F$操作,我们存下这个操作对应的$E$操作,循环范围$[L, R]$以及循环变量 对于$E$操作,我们存下这个操作对应的循环变量 我们记$F$操作对应的$E$操作为$match[i]$ 我们可以从左往右对于每一个$E$操作暴力寻找其对应的$F$操作 然后判断一下合不合法,十分好写 之…
题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序来判断小明对他的每个程序给出的时间复杂度是否正确. A++语言的循环结构如下: F i x y 循环体 E 其中F i x y表示新建变量 ii(变量 ii 不可与未被销毁的变量重名)并初始化为 xx, 然后判断 ii 和 yy 的大小关系,若 ii 小于等于 yy 则进入循环,否则不进入.每次循环…
时间复杂度 题目链接 对于 100%的数据:L≤100 . 很明显的模拟题 然而考试时还是爆炸了.. 调了一下午.. 蒟蒻表示不会离线操作.. 直接贴代码: #include<cstdio> #include<cstring> #include<iostream> using namespace std; ]; ]; bool dayu(string x,string y) { ; ; else return x>y; } int main() { scanf(&…
我对模拟的理解:http://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.luogu.org/problemnew/show/P3952 作为一个在现场没有切出这题后来才\(A\)掉的弱鸡,我深感惭愧. 主要是因为在\(Day1T1\)上浪费了太多时间,导致根本没有时间写这道模拟题----出考场后我是这样想的,我还以为要是有时间我就可以\(440\)了----所以\(Day1T2\)我爆零了. 什么?你说这种水题我怎么还爆零?前\…
题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机会来啦!下面请你编写程序来判断小明对他的每个程序给出的时间复杂度是否正确. A++语言的循环结构如下: F i x y 循环体 E 其中F i x y表示新建变量 ii(变量 ii 不可与未被销毁的变量重名)并初始化为 xx, 然后判断 ii 和 yy 的大小关系,若 ii 小于等于 yy 则进入循环,否则不进入.每次循环…
[题目链接] 点击打开链接 [算法] 其实这就是一道模拟题啦! 在判error和计算时间复杂度时,我们需要用栈这种数据结构 [代码] 这题的代码还是有些难写的,写的时候一定要有条理! #include<bits/stdc++.h> using namespace std; #define MAXL 100 const int INF = 2e9; int T,n; ],value[MAXL+]; ],r[MAXL+]; template <typename T> inline vo…
跪着看评测很优秀. 题目描述 给你若干个程序,这些程序只有 For 循环,求这些程序的时间复杂度. Solution 大模拟.讲下细节. flag[i]flag[i]flag[i] 表示第 iii 位有没有对复杂度产生贡献,而且只有 F 开头的语句才会计算. ed[i]ed[i]ed[i] 表示第 iii 位配套的 E 的位置(第 iii 位必须是 F). 注意判 CE 的时候, F x 2 1 F x 1 2 E E 这个程序也要判 CE. 最后贴上代码 #include<cstdio> #…
再写一道大模拟题. 由于是限时写的,相当于考场代码,乱的一批. 题目链接:P3952 时间复杂度 先记几个教训: 字符串形式的数字比较大小老老实实写函数,字典序都搞错几次了 栈空的时候不但pop()会RE,top()访问栈顶也会RE 数字以字符形式读入要考虑位数超过一位 思路: 1.我用的是在线做法. 2.使用结构体存储一个循环体,包括变量名.起始与结束.是否与n有关.是否能够进入(这一点麻烦了,在栈里推入是否与n有关以及是否能够进入就行了) 3.使用一个变量存储当前进入的层数(只记含n的),当…
对大模拟抱有深深的恐惧……不过这次写好像还好?拿个栈维护一下循环的嵌套,然后重定义一下读入即可.记得去年在考场上面死活调不粗来,代码也奇丑无比……希望今年能好一点吧! #include <bits/stdc++.h> using namespace std; #define maxn 100000 int L, mark[maxn]; char ans[maxn]; int fread(int t) { , k = ; char c; c = ans[t]; t ++; ')) { ; ; c…
sscanf读入数字,getline(cin,string)读一整行,其余暴力模拟即可. #include<cstdio> #include<string> #include<cstring> #include<iostream> #include<algorithm> #define rep(i,l,r) for (int i=(l); i<=(r); i++) typedef long long ll; using namespace…
搞一个栈模拟即可.对比一下和一年前考场上的代码233 //2018.11.8 #include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<algorithm> using namespace std; #define N 110 ')) c=getchar();return c;}int read()…
题目链接 Solution 用栈进行模拟. 记录一个 \(map\) 来看循环变量有没有用过. 对于每一次入栈都加信息. 出栈直接将 \(top\) 减一下. 反正一堆乱七八糟的东西瞎搞... 注意条件如果循环内均为常数,算作 \(O(1)\). Code #include<bits/stdc++.h> using namespace std; const int inf=0x3f3f3f3f; map<char,bool>v; int sta[108],top,sum[108];…
相关链接: noip2018总结 noip2017是我见过的有史以来最坑爹的一场考试了. 今年北京市考点有一个是我们学校,我还恰好被分到了自己学校(还是自己天天上课的那个教室),于是我同时报了普及提高,一天半的时间都考了. 这次考试总的来说基本上都爆炸了.虽然都拿了一等奖,但这根本不能说明问题,从中可以看出我在敲代码学习上还是问题百出. 下面我分两篇来总结一个kubi的OIer的解题思路及心得,当然包括正解.然而我莫名其妙的打了好长好长……难道我太勤奋了? OIer常识:本文所有log均以2为底…
时间复杂度 这道题从两个月前开始做,一直没做出来,最后今晚决心一定要做出来.于是开始认真的在打草纸上写思路,最后在AC的那一刻,差点哭了出来!! 题目大意 这个自己看吧,noip2017的D1T2 solution 先介绍一下这道题我们用到的每个变量他们的用处 stack[]记录变量的循环层 vis[]记录变量在栈中是否出现过 cmp函数,这个可以用作比较循环中a和b的大小 \[ \begin{cases} a<b -> 进入新的一层循环\\ a>b -> 无法进入新的循环,循环终…
好久没写blog了- 在noip2017前的最后几天,也就是在我可能将要AFO的前几天写点东西吧- 记录这最后几个月打的那些大大小小的模拟赛 一些比赛由于不允许公开所以就没有贴链接跟题面了- 2017.8 浴谷夏令营两次模拟赛 day1 T1是非常noip的水题-由辗转相减想到辗转相除-然而我当时写了相减-然后T掉了-T_T 惨 T2是一个很像 noip2008传纸条 的题目(不过传纸条数据比较小) 小数据直接爆搜,全a的数据可以路径计数 对于全部数据 类似传纸条 考虑记录四个状态\(dp[x1…