发个题目坑 二模03day1
1.数列(seq2.pas/c/cpp)
题目描述
输入格式
输出格式
输入输出样例
input: | output:
-----------------------------------
1 1 3 | 2
-----------------------------------
1 2 10 | 5
分析
代码
#include "cstdio"
int a,b,n,i,p,f[60];
bool h[80];
int main(){
freopen("seq2.in","r",stdin);
freopen("seq2.out","w",stdout);
scanf("%d%d%d",&a,&b,&n);
a%=7;
b%=7;
f[1]=f[2]=1;
h[9]=true;
for(i=3;i<52;++i){
f[i]=(a*f[i-1]+b*f[i-2])%7;
if(n==i){
printf("%d\n",f[i]);
return 0;
}
if(h[f[i]*8+f[i-1]]){
p=i-2;
break;
}else{
h[f[i]*8+f[i-1]]=true;
}
}
printf("%d\n", f[(n-1)%p+1]);
return 0;
}
2.最长路(path.pas/c/cpp)
题目描述
输入数据
输出数据
输入输出样例
input: | output:
-----------------------------------
2 1 |
1 2 1 | 2
题解
代码
#include <cstdio>
int next[70000],to[70000],hl,head[3000],le[70000];
inline void addEdge(int f,int t,int v){
++hl;
next[hl]=head[f];
to[hl]=t;
le[hl]=v;
head[f]=hl;
}
int i,j,k,l,a,b,c,m,n;
int qh,qt,q[600000],f[3000];
bool iq[3000],vis[3000];
void spfa(){
vis[1]=iq[1]=true;
qt=2;
qh=1;
q[1]=1;
while(qh!=qt){
i=q[qh];
iq[i]=false;
for(j=head[i];j!=0;j=next[j]){
vis[k=to[j]]=true;
l=le[j];
if(f[i]+l>f[k]){
f[k]=f[i]+l;
if(!iq[k]){
iq[k]=true;
q[qt++]=k;
}
}
}
++qh;
}
}
int main(int argc, char const *argv[]){
freopen("path.in","r",stdin);
freopen("path.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=0;i<m;++i){
scanf("%d%d%d",&a,&b,&c);
addEdge(a,b,c);
}
spfa();
if(!vis[n]){
printf("-1\n");
}else{
printf("%d\n", f[n]);
}
return 0;
}
3. 翻转游戏(flip.pas/c/cpp)
题目描述
bwbw
wwww
bbwb
bwwb
bwbw
bwww
wwwb
wwwb
输入格式
输出格式
输入输出样例
input: | output:
-------------------------
bwwb |
bbwb | 4
bwwb |
bwww |
题解
代码
#include "cstdio"
#include <cstring>
#define min(a,b) ((a)<(b)?(a):(b))
const int op[16]={19, 39, 78, 140, 305, 626, 1252, 2248, 4880, 10016, 20032, 35968, 12544, 29184, 58368, 51200};
int q[600000],qh,qt;
bool iq[80000],ok;
int i,j,k,s,f[80000],mi;
char p[10];
int main(){
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
k=1;
for(i=0;i<4;++i){
scanf("%s\n",p);
for(j=0;j<4;++j){
s|=(p[j]=='b'?k:0);
k<<=1;
}
}
memset(f,1,sizeof f);
q[0]=s;
f[s]=0;
qt=1;
mi=0x7fffffff;
if(s==65535||!s){
printf("0\n");
return 0;
}
while(qh!=qt){
i=q[qh];
iq[i]=false;
if(f[i]>=mi-1){
++qh;
continue;
}
for(j=0;j<16;++j){
k=i^op[j];
if(f[k]>f[i]+1){
f[k]=f[i]+1;
if(k==65535||!k){
ok=true;
mi=f[k];
}
if(!iq[k]){
iq[k]=true;
q[qt++]=k;
}
}
}
++qh;
}
if(ok){
printf("%d\n", mi);
}else{
printf("Impossible\n");
}
return 0;
}//妈旦说好的TG组难度呢?上次还考平衡树来着...
发个题目坑 二模03day1的更多相关文章
- 二模 (8) day2
第一题: 题目描述: 有 n 个炸弹,有些炸弹牵了一根单向引线(也就是说引线只有在这一端能被炸弹点燃),只要引爆了这个炸弹,用引线连接的下一个炸弹也会爆炸.每个炸弹还有个得分,当这个炸弹被引爆后就能得 ...
- 二模13day1解题报告
二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...
- Golang中的坑二
Golang中的坑二 for ...range 最近两周用Golang做项目,编写web服务,两周时间写了大概五千行代码(业务代码加单元测试用例代码).用Go的感觉很爽,编码效率高,运行效率也不错,用 ...
- 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...
- 二模 06day2
很长时间没更新有意义的题目了呢,这是一套题撒,于是乎我便开心的边刷题边发题解了撒. 第一题: interval 比较好玩的一题撒, 分分钟过了, 就是模拟贪吃蛇但是没有食物(嗯,只要你判断冲突). 整 ...
- 二模01day1解题报告
T1.音量调节(changingsounds) 有n个物品的背包(有点不一样,每个物品必须取),给出初始价值,物品价值可正可负(就是两种选择嘛),求可能的最大价值,不可能(<0或>maxs ...
- 二模 (12)day2
第一题: 题目大意: 有N颗糖,两个人轮流取,每次只能取质数颗,不能取的输.求先取者若必胜,最少需要多少步胜利.(N<=10000) 解题过程: 1.看到N的范围比较小,先打个素数表,然后dp即 ...
- 二模 (12) day1
第一题: 题目大意: 求由N个1,M个0组成的排列的个数,要求在排列的任意一个前缀中,1的个数不少于0的个数.N,M<=5000. 解题过程: 1.看到N,M的范围就明确肯定不会是dp,因为起码 ...
- 二模 (10)day1
第一题: 题目描述: 一个阅览室每天都要接待大批读者.阅览室开门时间是0,关门时间是T.每位读者的到达时间都不一样,并且想要阅读的刊物不超过5本.每位读者心里对自己想看的刊物都有一个排位,到达之后他会 ...
随机推荐
- 分布式Web服务器架构
最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网 ...
- 3.3.1实现Servlet
FirstServlet.java package com.helloweenvsfei.servlet; import java.io.IOException; import java.io.Pri ...
- zabbix_监控_进程
一.根据进程名称监控 1.创建Item(只能通过进程名.用户过滤进程) http://www.2cto.com/os/201405/302249.html http://www.ithao1 ...
- 虚拟机去混杂模式与 vlan in vxlan 特性
1. 去混杂模式 1.1 背景 混杂模式(Promiscuous Mode)是指一台机器能够接收所有经过它的数据流,而不论其目的地址是否是它.是相对于通常模式(又称“非混杂模式”)而言的. 这被网络管 ...
- 常用sql,在做项目时用mysqlWorkBeach里面自动生成的
-- 修改表中的字段的长度ALTER TABLE `sfkbbs`.`sfk_father_module` CHANGE ) NULL DEFAULT NULL COMMENT '父板块名字' ; 在 ...
- BZOJ1001 狼抓兔子(裸网络流)
Description 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一 ...
- Prim和Kruskal求最小生成树
Prim: 算法步骤: 1.任意结点开始(不妨设为v1)构造最小生成树: 2.首先把这个结点(出发点)包括进生成树里, 3.然后在那些其一个端点已在生成树里.另一端点还未在生成树里的所有边中找出权最小 ...
- POJ3264 Balanced Lineup
Balanced Lineup Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 44720 Accepted: 20995 ...
- 初次使用erlang的concurrent
如果不是它骇人听闻的并行性能,几乎不会考虑去学习这么一门语言.因为它的并行,我看到的是一块用软件写出来的电路板,是的,它几乎就是把电脑变成了一个可以自由编写逻辑的芯片. 例程来自这里:http://w ...
- 静态内部类和Lazy<T>优雅实现单例
public class Singleton { private Singleton() { } public static Singleton GetInstance() { return Conc ...