原文链接www.cnblogs.com/zhouzhendong/p/UOJ73.html 前言 纯属理性愉悦. 题解 Subtask1 发现就是求 $a \times b \mod c $ . 写个快速乘就好了. Subtask2 直接打开的话会发现 gedit 卡死了. 用 Subline Text 开开看了看好像没什么特别的. 看看这份代码的长度,怎么这么大? 仔细看会发现下面有一行注释起来的英文,不知道干什么的.先记着. 这一个子任务显然是个线性递推.大力矩阵快速幂即可. Subtask…
sub1:ans=a*b%c,龟速乘即可. #include <stdio.h> #include <stdlib.h> unsigned long long a, b, c, d; unsigned long long mul(unsigned long long a,unsigned long long b) { unsigned ; while(b) { )x=(x+a)%c; b>>=,a=(a+a)%c; } return x; } void _() { sc…
Test 1: 发现是一个字母表的映射 把 \('a' \to 'z'\) 打进去找出映射就好了QAQ . Test 2: 求助 \(dalao\) 得知的点.. 答案是 : \(2016x^2 + 4x + 10 (\bmod 233333)\) Test 3: 把给的数列输进 \(OEIS\) 里. 发现是 : \(\lfloor\sqrt{\frac{n}{\pi}}\rfloor\) Test 4: 发现给的是个图? 随便输几个数据进去发现只与连通性有关. 再进一步分析,发现是连通块大小…
1.4.5.6.10都是op=1的点,除4外直接通过模拟退火调参可以全部通过. #include<cmath> #include<ctime> #include<cstdio> #include<cstdlib> #include<algorithm> #define rep(i,l,r) for (int i=(l); i<=(r); i++) using namespace std; ; int n,m,K,op,ans,u,v,t[N…
点此看题面 大致题意: 给你若干份排序的代码,共\(6\)个子任务,每个子任务让你构造数据使得一份代码用时在给定的\(T\)以内,另一份代码用时超过\(2000000\). 子任务\(1\):归并排序\(AC\),计数排序\(TLE\) 很简单,要想让计数排序\(TLE\),自然是要让值域尽量大. 由于\(T=7\),因此\(n\)恰好为\(1\),则我们随便选取一个较大的数作为被排序的数即可. 子任务\(2\):冒泡排序\(AC\),选择排序\(TLE\) 这个子任务,我们可以选取一大堆相同的…
点此看题面 大致题意: 把\(10\)个点的暴力代码和输入数据都给你,让你求出输出数据. 子任务\(1\) 第一个子任务自然是拿来送分用的... 容易发现就是一个快速乘的过程啊. 代码如下: #include<bits/stdc++.h> #define Tp template<typename Ty> #define Ts template<typename Ty,typename... Ar> #define Reg register #define RI Reg…
在 2047 年,第 64 届全国青少年信息学奥林匹克冬令营前夕,B君找到了 2015 年,第 32 届冬令营的题目来练习. 他打开了第三题 “未来程序” 这道题目: 本题是一道提交答案题,一共 10 个测试点. 对于每个测试点,你会得到一段程序的源代码和这段程序的输入.你要运行这个程序,并保存这个程序的输出. 遗憾的是这些程序都效率极其地下,无法在比赛的 5 个小时内得到输出. B君想了一下,决定用 2047 年的计算机来试着运行这个题目,他找到了 2015 年的编译器,并很快得到了结果………
在OI中,题目有三类: 传统题 交互题 提交答案题 今天来了解一下第三类 概述 传统题:给你一个题面,你需要交一个程序,评测姬会用你的程序运行你看不到的一些测试点,用输出和正确答案比较 提交答案题:给你一个题面,把一堆输入也给你发下来,你通过各种玄学把输出算出来,再把输出交上去. 一般还会发一个checker来帮助你测试分数 有时还会把题目原来的游戏发下来供你颓废理解题意 为什么有这种题 我们可以猜想一下: 评测姬可能一时半会儿跑不出来 可能一个程序解决不了 可能要让你知道输入你才做得出来 特点…
Uoj 73 未来程序 神仙提答. Subtask 1 仔细阅读,发现是要计算 \(a*b\ \%\ c\).用龟速乘或者 \(python\) 直接算. Subtask 2 仔细阅读并手算一下,发现是每次令 \(a_{i+1}=a_i+2b_i+c_i,\ b_{i+1}=a_i+b_i,\ c_{i+1}=a_{i}\) ,重复 \(n\) 次. 写一个矩阵快速幂来加速递推即可. Subtask 3 仔细阅读,发现是要计算 \(\sum_{i=0}^n i^k,k=0,1,2,3,4\) .…
话说有这样一道神题:[集训队互测2015]未来程序·改. 大意是要求写一个简单的C++解释器!这里去掉了C++的许多特性,连简单的break和continue都没有了! 话说NOI被屠了之后,一时心血来潮,打算A了这道题.最近的一个星期闲着无聊(其实还是很多事要做),在历经险阻之后,终于A掉这道丧心病狂的OI题. 虽然我没有看过任何关于解释器的理论,但我觉得好像还是可以凭自己乱搞出来的,于是便开始了这长达一周的旅程.估计写了4h的代码,调试2h. 听说可以用语言分析树这样高大的东西来做,我看到其…