A

T2-power of 2

题目描述

是一个十分特殊的式子。

例如:

n=0时 =2

然而,太大了

所以,我们让对10007 取模

输入输出格式

输入格式:

n

输出格式:

 % 10007

输入输出样例

输入样例#1:

2
输出样例#1:

16

说明

n<=1000000


2^(2^n)

快速幂的方式log幂....就是n次平方

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#define debug(x) cout<<#x<<'='<<x<<' '
using namespace std;
typedef long long ll;
const int MOD=;
inline int read(){
char c=getchar();int x=,f=;
while(c<''||c>''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
}
int n;
int ans=;
int main(){
n=read();
if(n==){cout<<;return ;}
while(n--){
ans=(ans*ans)%MOD;
}
printf("%d",ans%MOD);
}


C

T3-cube

题目描述

有一个立方体,分成了个完全相等的小格

有的小格出现了糖果,如果一个格子出现多次糖果,则以最后得糖果数为准,你到了这个小格就可以拿,你在(1,1,1),你要走到(n,n,n),且只能走最短路径

问:你最多能拿到多少糖果

输入输出格式

输入格式:

n 以下若干行(EOF结束),每行4个数,前三个数是坐标,最后一个数是糖果个数

输出格式:

你最多拿到的糖果数

输入输出样例

输入样例#1:

2
1 1 1 3
1 1 2 4
2 1 2 5
输出样例#1:

12
输入样例#2:

5
输出样例#2:

0

说明

n<=100

糖果数<=100


水DP,立体了而已

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#define debug(x) cout<<#x<<'='<<x<<' '
using namespace std;
const int N=;
inline int read(){
char c=getchar();int x=,f=;
while(c<''||c>''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
}
int n,x,y,z,w[N][N][N];
int f[N][N][N];
int main(){
n=read();
while(scanf("%d%d%d",&x,&y,&z)!=EOF) w[x][y][z]=read();
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
for(int k=;k<=n;k++)
f[i][j][k]=max(f[i-][j][k],max(f[i][j-][k],f[i][j][k-]))+w[i][j][k];
printf("%d",f[n][n][n]);
}


D

T4-cube2

题目描述

还是那个立方体

还是那些糖

只是你需要走两次

输入输出格式

输入格式:

见T3

输出格式:

同上

输入输出样例

输入样例#1:

2
1 1 2 3
1 2 2 3
1 2 1 3
输出样例#1:

9

说明

n<=10


立体版传纸条

(1,1,1)和(n,n,n)也不知道怎么搞的

#include <iostream>
#include <cstdio>
//#include <algorithm>
#include <cstring>
#include <cmath>
#define debug(x) cout<<#x<<'='<<x<<' '
using namespace std;
typedef long long ll;
const int N=;
inline int read(){
char c=getchar();int x=,f=;
while(c<''||c>''){if(c=='-')f=-;c=getchar();}
while(c>=''&&c<=''){x=x*+c-'';c=getchar();}
return x*f;
}
int n,x,y,z,w[N][N][N];
int f[N][N][N][N][N*];
inline int max(int a,int b){
return a>b?a:b;
}
void dp(){
for(int s=;s<=n*;s++)
for(int i=;i<s&&i<=n;i++)
for(int j=;(i+j)<s&&j<=n;j++)
for(int k=;k<s&&k<=n;k++)
for(int l=;(l+k)<s&&l<=n;l++){
int z1=s-(i+j),z2=s-(k+l);
if(z1>n||z2>n) continue;
if(i==k&&j==l&&s!=*n) continue;
int mx1=max(f[i-][j][k-][l][s-],f[i-][j][k][l-][s-]);
mx1=max(f[i-][j][k][l][s-],mx1);
int mx2=max(f[i][j-][k-][l][s-],f[i][j-][k][l-][s-]);
mx2=max(f[i][j-][k][l][s-],mx2);
int mx3=max(f[i][j][k-][l][s-],f[i][j][k][l-][s-]);
mx3=max(f[i][j][k][l][s-],mx3);
f[i][j][k][l][s]=max(mx1,max(mx2,mx3))+w[i][j][z1]+w[k][l][z2]; //printf("%d %d %d %d %d %d\n",i,j,k,l,s,f[i][j][k][l][s]);
}
}
int main(){
n=read();
while(scanf("%d%d%d",&x,&y,&z)!=EOF) w[x][y][z]=read();
dp();
printf("%d",f[n][n][n][n][*n]-w[n][n][n]+w[][][]);
}


B

洛谷CON1041 NOIP模拟赛一试的更多相关文章

  1. [洛谷0925]NOIP模拟赛 个人公开赛 OI

     P3395 路障 题目背景 此题约为NOIP提高组Day1T1难度. 题目描述 B君站在一个n*n的棋盘上.最开始,B君站在(1,1)这个点,他要走到(n,n)这个点. B君每秒可以向上下左右的某个 ...

  2. 【比赛】洛谷夏令营NOIP模拟赛

    Day1 第一题 水题 第二题 题意:一个n*m的字符矩阵从左上到右下,经过字符形成回文串的路径数.n≤500 回文串,考虑两段往中间DP. f[k][x][y]表示走了k步,左上点横坐标为x,右下点 ...

  3. 洛谷 P5046 [Ynoi2019 模拟赛] Yuno loves sqrt technology I(分块+卡常)

    洛谷题面传送门 zszz,lxl 出的 DS 都是卡常题( 首先由于此题强制在线,因此考虑分块,我们那么待查询区间 \([l,r]\) 可以很自然地被分为三个部分: 左散块 中间的整块 右散块 那么这 ...

  4. [洛谷P5048][Ynoi2019模拟赛]Yuno loves sqrt technology III

    题目大意:有$n(n\leqslant5\times10^5)$个数,$m(m\leqslant5\times10^5)$个询问,每个询问问区间$[l,r]$中众数的出现次数 题解:分块,设块大小为$ ...

  5. 洛谷金秋夏令营模拟赛 第2场 T11737 时之终末

    这道题就是道状压dp...比赛的时候太贪心 然后状压又不好 所以T2 T3一起挂了QAQ 吸取教训QAQ f[i][j][k]表示前i个数选了j个 最后a个的状态为k的答案 #include<c ...

  6. 洛谷金秋夏令营模拟赛 第2场 T11738 伪神

    调了一个下午只有八十分QAQ md弃了不管了 对拍也没拍出来 鬼知道是什么数据把我卡了QAQ 没事我只是个SB而已 这题其实还是蛮正常的 做法其实很简单 根据链剖的构造方法 你每次修改都是一段又一段的 ...

  7. 【洛谷】xht模拟赛 题解

    前言 大家期待已久并没有的题解终于来啦~ 这次的T1和HAOI2016撞题了...深表歉意...表示自己真的不知情... 天下的水题总是水得相似,神题各有各的神法.--<安娜·卡列妮娜> ...

  8. 洛谷P5048 [Ynoi2019模拟赛]Yuno loves sqrt technology III(分块)

    传送门 众所周知lxl是个毒瘤,Ynoi道道都是神仙题 用蒲公英那个分块的方法做结果两天没卡过去→_→ 首先我们分块,预处理块与块之间的答案,然后每次询问的时候拆成整块和两边剩下的元素 整块的答案很简 ...

  9. 洛谷 P5048 - [Ynoi2019 模拟赛] Yuno loves sqrt technology III(分块)

    题面传送门 qwq 感觉跟很多年前做过的一道题思路差不多罢,结果我竟然没想起那道题?!!所以说我 wtcl/wq 首先将 \(a_i\) 离散化. 如果允许离线那显然一遍莫队就能解决,复杂度 \(n\ ...

随机推荐

  1. 仿饿了点餐界面2个ListView联动

    如图是效果图 是仿饿了的点餐界面 1.点击左侧的ListView,通过在在适配器中设置Item来改变颜色,再通过notifyDataSetInvalidated来刷新并用lv_home.setSele ...

  2. Java--FutureTask原理与使用(FutureTask可以被Thread执行,可以被线程池submit方法执行,并且可以监控线程与获取返回值)

    package com; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; i ...

  3. codis集群安装

    在网上找了很多codis的集群安装方法,看起来都是大同小异,本人结合了大多种方法完成了一套自己使用的codis的集群安装,可以供大家学习使用,如果有什么问题或者不懂的地方欢迎指正 1.集群规划: 三台 ...

  4. zookeeper集群

    0,Zookeeper基本原理 ZooKeeper集群由一组Server节点组成,这一组Server节点中存在一个角色为Leader的节点,其他节点都为Follower.当客户端Client连接到Zo ...

  5. 单行文字滚动就用myslider

    单行文字滚动就用myslider,myslider是一个小型的内容滚动jquery插件. 首先请看实例:http://keleyi.com/jq/myslider/demo/4.htm 然后来看代码: ...

  6. 鼠标悬停显示CSS3动画边框

    效果体验:http://keleyi.com/keleyi/phtml/css3/14.htm 以下是代码: <!DOCTYPE html> <html xmlns="ht ...

  7. 在网页布局中合理使用inline formating context(IFC)

    引子:给大家出一个小小的考题,如何使用css来实现类似下面的在指定区域内,内容自适应的垂直居中.

  8. browserify压缩合并源码反编译

    最近在学习钉钉(一个协作应用)桌面应用的前端源码时候,发现其js源码是用browserify做模块开发.于是想还原其源码的原本的目录结构,学习它的目录分类以及业务划分. 前言 用过browserify ...

  9. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q121-Q123)

    Question  121 You are designing a SharePoint 2010 workflow that will be used to monitor invoices. Th ...

  10. 数据集转换为Json

    数据集转换为Json 第一步:新建一个类对象  通常我会写三个属性:状态.返回信息.数据集 第二步:新建一个JSON转换类 第三步:把类对象当做参数传入JSON转换类 ———————————————— ...