一模 (1) day1
第一题:(水题)
题目大意:求出n个 X% (X是小于等于2位的整数) 的乘积,去掉末尾的0;
解题过程:
1.直接 把整数乘好,然后确定小数点的位置,去掉多余的0 输出即可。
第二题:(搜索题)
题目大意:给出5*5的矩阵,矩阵由J 和 H 组成。 求出 规模为7 且 J的个数多于H的四连通块的个数。
解题过程:
1.一开始 直接 爆搜+hash 判重,但是样例过不去,然后才发现 深搜 的路径是一直走到底的,也就是不可能出现十字的情况。
2.然后想到可以先深搜5个,然后剩下2个用枚举的方法加上去。。(这样是错的,见反例B,应该深搜4个,枚举3个)枚举比较费时间,为了节省时间,我保存了上次枚举时方块的横坐标,然后这次枚举的横坐标就从上次的开始。但是这样是错的。(见反例A)应该从上次枚举时方块的横坐标-1开始。
反例A:
0 0 0 0 0
0 1 0 1 0
0 1 0 1 0
0 1 1 1 0
0 0 0 0 0
反例B:
0 0 0 0 0
0 0 0 0 0
0 0 1 0 1
0 1 1 1 1
0 0 0 1 0
坑爹啊!!!!!!
第三题:
题目大意:经典约瑟夫问题,求出队顺序;
解题过程:
1.写了个链表暴力模拟竟然也能过。。
2.题解是排序二叉树,本来一直以为约瑟夫只能暴力模拟的。。找了好多资料,终于搞懂了。算法大致如下:
每次找到一个元素,删掉之后,剩下的编号大于它的重新编个号,比如 N=5 M=3,1 2 3 4 5,删去3,那么 变成 1 2 3(4) 4(5),可以发现重新编号后现在还是指着3,再往后数3个,那么指向1,也就是剩余的人中编号第1个小的。也就是 把删掉的元素拿掉后形成的队列中,再去数m个,找到队列中的元素i,那么这里的元素i的真实编号是 当前还没被删掉的编号第i个小的人的编号。 用排序二叉树来维护即可。
一模 (1) day1的更多相关文章
- 二模 (16) day1&day2
第一题:题目大意: 数列a[0]=a[1]=1, a[n]=a[n-2]*a[n-1]*n,求a[n]的因子个数 mod 1000000007. n<=1000000 解题过程: 1.递推式还 ...
- 二模 (15)day1
第一题: 题目大意: 有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个. 解题过程: 1.这题是刘汝佳<<训练指南>>上的一道经 ...
- 二模 (13)day1
第一题: 题目大意: N个发射站排成一排,求每个发射站左右第一个比它高的发射站. N<=1000000 解题过程: 1.前几天做poj的时候刚好在discuss里看到有一个神奇的东东叫单调栈,正 ...
- 二模 (12) day1
第一题: 题目大意: 求由N个1,M个0组成的排列的个数,要求在排列的任意一个前缀中,1的个数不少于0的个数.N,M<=5000. 解题过程: 1.看到N,M的范围就明确肯定不会是dp,因为起码 ...
- 二模 (11) day1
第一题: 题目大意:用邻接矩阵给出一棵树(边权非负)上N个节点相互之间的最短路距离,求这棵树所有边权的和. 解题过程: 1.暂时还没想出来,待AC. 第二题: 题目大意:给出一些单词,然后建立Trie ...
- 二模 (9)day1
第一题: 题目大意: 给出一个n位01串,要么不动它,要么把它删掉一个字符,要么插入一个字符(0或1),要么把一个1变成0,.使得有1的位置号的总和是n+1的倍数,或者是0. 解题过程: 1.直接枚举 ...
- 二模 (10)day1
第一题: 题目描述: 一个阅览室每天都要接待大批读者.阅览室开门时间是0,关门时间是T.每位读者的到达时间都不一样,并且想要阅读的刊物不超过5本.每位读者心里对自己想看的刊物都有一个排位,到达之后他会 ...
- 二模 (8) day1
第一题: 题目大意: 梦幻城市每年为全市高中生兴办一次运动会.为促使各校同学之间的交流,采用特别的分队方式:每一个学校的同学,必须被均匀分散到各队,使得每一队中该校的人数皆相同.为增加比赛的竞争性,希 ...
- 二模 (7) day1
第一题: 题目大意: 给出数轴上N棵树的坐标和高度,如果两棵树之间的距离小于其中一颗树的高度,那么就有树会被挡住.因此要把一些树砍矮一点.求砍树的总高度最小值. N<=100000; 解题过程: ...
随机推荐
- C#中“==”和equals()的区别
如以下代码: 1 2 3 4 5 6 7 8 9 int age = 25; short newAge = 25; Console.WriteLine(age == newAge); //t ...
- JavaScript基础知识点
本书目录 第一章: JavaScript语言基础 第二章: JavaScript内置对象第三章: 窗口window对象第四章: 文档document对象第五章: 表单form对象第六章: ...
- JavaWeb学习总结(六)—HttpServletResponse
Response概述: response是Servlet.service方法的一个参数,类型为javax.servlet.http.HttpServletResponse.在客户端发出每个请求时,服务 ...
- openfire过滤脏话插件,控制消息是否发送
参考:http://myopenfire.com/article/getarticle/9 package com.myopenfire.plugin; import java.io.File; im ...
- Css_Backgroud-position(背景图片)定位问题详解
background-position的说明: 设置或检索对象的背景图像位置.必须先指定 background-image 属性.该属性定位不受对象的补丁属性( padding )设置影响. ...
- nfs服务器设置
前段时间重新装了一下Linux系统,结果导致NFS服务器总是挂在不成功,于是粗略学习了一下: NFS服务需要两个软件包: 1.nfs-utiles-* 2.portmap-* nfsd:它是基本的NF ...
- Java 数据类型之间的转换 拆分字符串 Date/Calendar的转换
数据类型转换 1. String - Int String str="123"; int i=1; int str=Integer.parseInt(str); String i= ...
- android中的通信机制总结
第一种:使用handler来进行通信 handler 大家可以把它想象成主线程(UI线程)的一个子线程,它可以给主线程(UI线程)发送数据从而更新主线程(UI线程)的UI与逻辑,handler ...
- dedecms5.7怎么取消邮箱验证以及dedecms 会员发布的文章不需要审核的解决方法
后台 ——系统基本参数——会员设置——会员权限开通状态——改为0 1.实现会员发布文章不需要审核,非会员发布需要审核 在member这个文件夹下找到archives_sg_add.php这个文件,打开 ...
- 【转】 C++ vector用法
在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结. 1 基本操作 (1)头文件#include<vector>. (2)创建vector对象,vector<in ...