T1  终于结束的起点

题解:枚举啊...

斐波那契数 第46个爆int,第92个爆long long....

发现结果一般是m的几倍左右....不用担心T。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std; int M,N; int t,f1,f2; int main()
{
scanf("%d",&M);f1=;f2=;
for(int i=;i;i++)
{
t=(f1+f2)%M;
f1=f2%M;
f2=t;
if(f1%M==&&f2%M==)
{
printf("%d\n",i-);
break;
}
}
return ;
}

T2跳跳!

 题解:贪心。

从当前没跳过的最高的和最低的之间来回跳。

//预计10分
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define LL long long
using namespace std; int n; int h[],vis[]; LL ans; void dfs(int now,int a,LL scor)
{
if(a==n)
{
ans=max(ans,scor);
return ;
}
for(int i=;i<=n;i++)
{
if(vis[i]) continue;
vis[i]=true;
dfs(i,a+,scor+(h[now]-h[i])*(h[now]-h[i]));
vis[i]=false;
}
} int main()
{
freopen("rand.txt","r",stdin);
freopen("baoli.txt","w",stdout);
scanf("%d",&n);
for(int i=;i<=n;i++) scanf("%d",&h[i]);
dfs(,,);
cout<<ans<<endl;
return ;
}

20

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define LL long long
using namespace std; int n; int L,R; int h[]; LL ans; int main()
{
scanf("%d",&n);L=;R=n;
for(int i=;i<=n;i++) scanf("%d",&h[i]);
sort(h,h+n+);
while(L<R)
{
ans=ans+(h[R]-h[L])*(h[R]-h[L]);
L++;
ans=ans+(h[R]-h[L])*(h[R]-h[L]);
R--;
}
cout<<ans<<endl;
return ;
}

T3 抱歉没读懂题目

T4 不围棋

 题解:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define N 605
using namespace std; int cnt,g,flag,n; int a[N][N],qx[N*N],qy[N*N],vis[N][N]; int h,t; int dx[]={,,,-}, dy[]={-,,,}; char b[N][N]; struct B
{
int x,y;
}c[N*N]; bool canGo(int x,int y,int flag)
{
a[x][y]=(flag%==?:-); //先放上要走的棋子
memset(vis,,sizeof(vis));
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
{
if(vis[i][j]||a[i][j]==) continue; //*****
h=;t=;int js=; //扫描联通块
qx[++t]=i;qy[t]=j;
while(h<=t)
{
int nowx=qx[h],nowy=qy[h];h++;vis[nowx][nowy]=true;
for(int v=;v<;v++) //*****
{ int nxtx=nowx+dx[v],nxty=nowy+dy[v]; //遍历四周
if(nxtx<=||nxty<=||nxtx>n||nxty>n||vis[nxtx][nxty]) continue; //*****
if(!a[nxtx][nxty]) js++; //存在气
if(a[nxtx][nxty]==a[nowx][nowy])
{
qx[++t]=nxtx;qy[t]=nxty; //*****
}
}
}
// cout<<"--------------"<<endl;
if(!js) //扫描的联通块没有气
{
a[x][y]=; //尝试失败
return false;
}
}
}
return true;
} int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
{
cin>>b[i];
for(int j=;j<=n;j++)
{
if(b[i][j-]=='.') //若为空
{
a[i][j]=;
c[++cnt].x=i;c[cnt].y=j; //标记空位
}
if(b[i][j-]=='X') a[i][j]=-; //若为黑棋 -1
if(b[i][j-]=='O') a[i][j]=; //若为白棋 1
}
}
if(n==){printf("-1 -1\n");return ;} //棋盘只有一个空位,先手没法走
while()
{
flag++;g=; //flag标记当前是黑棋还是白棋走
for(int i=;i<=cnt;i++) //找一个能走的空位
{
int xx,yy;xx=c[i].x;yy=c[i].y;
if(a[xx][yy]) continue;
if(canGo(xx,yy,flag))
{
printf("%d %d\n",xx,yy);
g=true;a[xx][yy]=(flag%==?:-);
break;
}
}
if(!g)
{
printf("-1 -1\n");
return ;
}
}
return ;
}

30

NOIP模拟赛(洛谷11月月赛)的更多相关文章

  1. 「P4994」「洛谷11月月赛」 终于结束的起点(枚举

    题目背景 终于结束的起点终于写下句点终于我们告别终于我们又回到原点…… 一个个 OIer 的竞赛生涯总是从一场 NOIp 开始,大多也在一场 NOIp 中结束,好似一次次轮回在不断上演.如果这次 NO ...

  2. 「LuoguP4995」「洛谷11月月赛」 跳跳!(贪心

    题目描述 你是一只小跳蛙,你特别擅长在各种地方跳来跳去. 这一天,你和朋友小 F 一起出去玩耍的时候,遇到了一堆高矮不同的石头,其中第 ii 块的石头高度为 h_ihi​,地面的高度是 h_0 = 0 ...

  3. 「P4996」「洛谷11月月赛」 咕咕咕(数论

    题目描述 小 F 是一个能鸽善鹉的同学,他经常把事情拖到最后一天才去做,导致他的某些日子总是非常匆忙. 比如,时间回溯到了 2018 年 11 月 3 日.小 F 望着自己的任务清单: 看 iG 夺冠 ...

  4. 洛谷11月月赛(284pts rank85)

    https://www.luogu.org/contestnew/show/12006 我是比赛完后在去写的 这是我第一次打洛谷月赛,之前一次是比赛完才去看而且写了第一题就没写后面的了 284分,太水 ...

  5. 洛谷11月月赛round.1

    太感动了#2 thwfhk 240 (801ms) 100 100 40   又一张明信片,话说10月的怎么还没收到   P2246 SAC#1 - Hello World(升级版) 题目背景 一天, ...

  6. 洛谷11月月赛round.2

    P3414 SAC#1 - 组合数 题目背景 本题由世界上最蒟蒻最辣鸡最撒比的SOL提供. 寂月城网站是完美信息教室的官网.地址:http://191.101.11.174/mgzd . 题目描述 辣 ...

  7. 洛谷11月月赛题解(A-C)

    心路历程 辣鸡T3卡我1.5h题意,要不是最后nlh跟我解释了一下大样例估计这次是真凉透了.. A P4994 终于结束的起点 打出暴力来发现跑的过最大数据?? 保险起见还是去oeis了一波,然后被告 ...

  8. 【CSGRound2】逐梦者的初心(洛谷11月月赛 II & CSG Round 2 T3)

    题目描述# 给你一个长度为\(n\)的字符串\(S\). 有\(m\)个操作,保证\(m≤n\). 你还有一个字符串\(T\),刚开始为空. 共有两种操作. 第一种操作: 在字符串\(T\)的末尾加上 ...

  9. 【LGR-065】洛谷11月月赛 III Div.2

    临近$CSP$...... 下午打了一发月赛,感觉很爽. 非常菜的我只做了前两题......然而听说前两题人均过...... 写法不优秀被卡到$#1067$...... T1:基础字符串练习题: 前缀 ...

随机推荐

  1. 1、安装electron

    安装electron安装并非一帆风顺,我有FQ哈,所以网络方面我就不说了,你们不行的话,可以用cnpm,我说的是另一个问题 我是这样解决的,用以下命令就好了 sudo npm install -g e ...

  2. 528. Random Pick with Weight

    1. 问题 给定一个权重数组w,w[i]表示下标i的权重,根据权重从数组中随机抽取下标. 2. 思路 这道题相当于 497. Random Point in Non-overlapping Recta ...

  3. WPF usercontrol 自定义依赖属性

    1.依赖属性不同意一般属性,一般属性主要定义在对象中,而依赖属性是存在一个特殊的依赖属性表中.2.当我们触发改变值时,需要通过SetValue这种方式进行触发. UserControl1.xaml: ...

  4. 一个好玩的CTF题

    一个CTF的题目,拿来学习学习 玩了好久,再加上学校一堆破事,最近又开始瞎弄了,找了几个CTF的题目,和别人写的一些内容,也当是学习,也当是看完之后的小结.顺便也说一下如果自己拿到这题目会从哪做起. ...

  5. 算法准备-分治算法解决第k位数的线性查找

    由作业士兵排队问题引出的 在一个划分成网格的操场上,n个士兵散乱地站在网格点上.网格点由整数最表(x,y)表示.士兵可以沿着网格边上.下.左.右移动一步,但在同一时刻一个网格上只能有一名士兵.按照军官 ...

  6. 对CCLE数据库可以做的分析--转载

    转载:http://www.bio-info-trainee.com/1327.html 收集了那么多的癌症细胞系的表达数据,拷贝数变异数据,突变数据,总不能放着让它发霉吧! 这些数据可以利用的地方非 ...

  7. 2016"百度之星" - 资格赛(Astar Round1) A 逆元

    Problem A  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others) Problem ...

  8. java 普通容器,同步容器,并发容器,同步工具

    同步容器,如HashTable,提供独占访问. 并发容器,ConcurrentHashMap,有着更好的并发性能,但是不能独占访问. --putIfAbsent 同步工具: 闭锁:CountDownL ...

  9. redis缓存穿透、缓存击穿、缓存雪崩

    缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时需要从数据库查询,查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到数据库去查询,造成缓存穿透. 解决办法: 预校验 在控 ...

  10. Docker环境准备-安装Ubuntu

      ***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***