当前位置: 首页 > news >正文

我的世界手机做图的网站/服装市场调研报告范文

我的世界手机做图的网站,服装市场调研报告范文,怎么和网站主联系方式,网站建设网站搭建T1: 赛车: 题目大意: 有N 个赛车手准备在高速公路上赛车,,第i个赛车的车速为S[i] 千米/小时,高速公路上一共有M个赛车道。 同车道前面有X个赛车,这辆赛车的车速就会降低D*X千米/小时&#x…

T1:
赛车:
题目大意:
有N 个赛车手准备在高速公路上赛车,,第i个赛车的车速为S[i] 千米/小时,高速公路上一共有M个赛车道。
同车道前面有X个赛车,这辆赛车的车速就会降低D*X千米/小时,当然不会降到0以下,所以车速应该max(S[i]-D*X, 0)。
由于车距很大,所以即使后面的车比前面的车快,你也不用担心会发生碰撞。
高速公路上有一个最低限速L,凡是低于该速度的车不允许在高速上行驶的(注意:减速后的速度若低于L也不能在高速上行驶),现在请你来计算一共可以多少辆赛车在高速公路上行驶。

30%的数据:N≤20,M=1;
60%的数据:N≤1000,M≤10;
100%的数据:1≤N≤50000,1≤M≤100,1≤S[i], L≤10^6,0≤D≤5000。
编号为1..N

题解:
这题我们就先对车的速度从小到大;
因为排序保证了结果的最优,所以枚举一个车速s[i],一个赛道,能放就放,不能就新开一条车道,车道满了或者每个车道都低于限速就走。
时间复杂度:O(N log2 N+N)

vara:array [0..50001] of longint;sum:array [0..101] of longint;ans,n,m,d,l,i,j,k:longint;procedure qsort(l,r:longint);
vari,j,mid:longint;
beginif l>=r then exit;i:=l; j:=r;mid:=a[(l+r) div 2];repeatwhile a[i]<mid do inc(i);while a[j]>mid do dec(j);if i<=j thenbegina[0]:=a[i];a[i]:=a[j];a[j]:=a[0];inc(i); dec(j);end;until i>j;qsort(i,r);qsort(l,j);
end;beginreadln(n,m,d,l);for i:=1 to n doreadln(a[i]);qsort(1,n);sum[0]:=0;for i:=1 to n dobeginj:=0;while j<sum[0] dobegininc(j);if a[i]-d*sum[j]>=l then break;end;if (a[i]-d*sum[j]>=l) and (j<>0)then inc(sum[j])else if (sum[0]+1<=m) and (a[i]>=l) thenbegininc(sum[0]);sum[sum[0]]:=1;end;end;for i:=1 to sum[0] doans:=ans+sum[i];writeln(ans);
end.

T2:
数列:
题目大意:
Smart非常喜欢研究数列规律,一天他在纸上写着一列数:1,2,3,…,N,突然他想到:1,2,3,…,N这些数里面,1出现的次数是多少?如N=11的时候,有1, 10, 11共出现4次1。
现在告诉你N,你能帮助Smart快速给出答案么?

30%的数据:1≤N≤200;
100%的数据:1≤N≤2*10^8。

题解:
这题要找规律然后就可以推,方法在这里,我就不详细讲了:http://blog.csdn.net/yi_afly/article/details/52012593

时间复杂度:O(log N)

varans,i,j,x,y,z,n:longint;
beginreadln(n);ans:=n div 10;if n mod 10<>0 then ans:=ans+1;i:=10;while i<=n dobeginj:=i*10;x:=n div j;y:=n mod j div i;z:=n mod j mod i;if y>1 thenans:=ans+(x+1)*ielse if y=0 then ans:=ans+x*ielse if y=1 then ans:=ans+x*i+z+1;i:=i*10;end;writeln(ans);
end.

T3:
炸僵尸:
在一个 N 行 M 列单元格构成的地图中,去放置一个炸弹,能以放置点为中心进行行列延伸炸到同行同列的僵尸,但不能穿墙。下图中可以把炸弹放置在第 3 行第 4 列,最多可以炸到 4 个僵尸。
这里写图片描述
对地图稍加改动(如下图),在第 5 行第 4 列处加 入一个墙体,又如何呢?答案还是最多炸到 4 个僵尸,只不过最佳炸弹放置点发生了变化, 应该放到第 6 行第 6 列的位置。
这里写图片描述
炸弹要靠勇敢的小星星去放,他在图中位置为【X,Y】只能在地图中朝上下左右四个方向行进(不能斜对角移动) ,不能穿墙,也不能穿越僵尸,要保证他的安全,如下图,告诉你小星星起始位 置是第2行第2 列,那么他的最佳放置炸弹位置应该是第3行第2 列,最多炸到2个僵尸。
这里写图片描述
求最多能炸掉的僵尸数量。

30%的数据,保证 N,M<14,并且小星星一定能够抵达最佳炸弹放置点
40%的数据,保证 N,M<14
70%的数据,保证 N,M<101
100%的数据,保证 N,M<2001
100%的数据,保证 X < N
100%的数据,保证 Y < M

题解:
广搜+预处理:
我们先预处理每个位置放炸弹能炸掉多少个僵尸,
O(NM)的时间复杂度;
然后以[X,Y]为起点广搜,因为N,M<2001,时间复杂度应该也是O(NM);
最后把能遍历到的点找一个能爆炸炸死僵尸的最大值即可。

constmaxn=10001;dx:array [1..4] of integer=(1,-1,0,0);dy:array [1..4] of integer=(0,0,-1,1);
vara:array [0..2002,0..2002] of -1..2;p:array [0..2002,0..2002] of longint;q:array [0..maxn,1..2] of longint;i,j,k,n,m,px,py,ans:longint;c:char;procedure bfs;
vari,j,mx,my,head,tail:longint;
beginhead:=0;tail:=1;q[1,1]:=px;q[1,2]:=py;a[px,py]:=-1;while head<>tail dobegininc(head);if head=maxn then head:=1;mx:=q[head,1];my:=q[head,2];for i:=1 to 4 dobeginj:=1;while a[mx+dx[i]*j,my+dy[i]*j]=0 dobegininc(tail);if tail=maxn then tail:=1;q[tail,1]:=mx+dx[i]*j;q[tail,2]:=my+dy[i]*j;a[q[tail,1],q[tail,2]]:=-1;end;end;end;
end;beginassign(input,'boom.in'); reset(input);assign(output,'boom.out');rewrite(output);readln(n,m,px,py);for i:=1 to n dobeginfor j:=1 to m dobeginread(c);if c='G' then a[i,j]:=1else if c='#' then a[i,j]:=2else a[i,j]:=0;end;readln;end;for i:=1 to n dobegink:=0;for j:=1 to m doif a[i,j]<>2 then begin k:=k+a[i,j]; p[i,j]:=p[i,j]+k; endelse k:=0;k:=0;for j:=m downto 1 doif a[i,j]<>2 then begin p[i,j]:=p[i,j]+k; k:=k+a[i,j]; endelse k:=0;end;for i:=1 to m dobegink:=0;for j:=1 to n doif a[j,i]<>2 then begin p[j,i]:=p[j,i]+k; k:=k+a[j,i]; endelse k:=0;k:=0;for j:=n downto 1 doif a[j,i]<>2 then begin p[j,i]:=p[j,i]+k; k:=k+a[j,i]; endelse k:=0;end;bfs;for i:=1 to n dofor j:=1 to m doif a[i,j]=-1 thenif p[i,j]>ans then ans:=p[i,j];writeln(ans);close(input); close(output);
end.

T4:
梦里的难题:
题目大意:
有 N个数字,由 1 到 K 组成,排成一列形成数字串,求该列数字串不包含的最短的由 1 到 K 组成的的子序列长度是多少?

1≤N≤100000
1≤K≤10000

题解:
这题,其实我们可以找找规律:
如果要生成要生成M位的子序列,那么就要保证k个数字都要出现过M次;
再找找:
这M次必须是是循环的!即你要生成一个子序列,长度为2,那么你就要满足你的数字串中
有1..K …… 1..K,例如 K=2
那么你在一串数字中,必须要出现过1212,2121,2112,1221诸如这些的循环节!
就是要把数字串要生成M位,就要使得分成M部分,每部分都要有1~K的每一个。
例如122222212222,这里的最大长度就是2,因为最大循环节是2个1~K
所以这题很容易了,每次找到一个1~K就加一,最后找不到了,就把能找到的最大长度+1,则为最小达不到的。
时间复杂度:O(N)

vara:array [0..10001] of boolean;i,d,n,k,x,ans:longint;p:boolean;
beginassign(input,'dream.in'); reset(input);assign(output,'dream.out');rewrite(output);readln(n,k);d:=0;p:=false;for i:=1 to n dobeginreadln(x);if a[x]=p then inc(d);a[x]:=not(p);if d=k thenbegind:=0;inc(ans);p:=not(p);end;end;writeln(ans+1);close(input); close(output);
end.
http://www.jmfq.cn/news/4808143.html

相关文章:

  • 网站底部代码大全/百度信息流开户多少钱
  • 郑州网站建设排行榜/无锡网站推广公司
  • 自己可以建网站吗/win10优化大师
  • 蒙古文网站建设/西安今天刚刚发生的新闻
  • 网站后台修改的页面不能显示/西安企业网站seo
  • 站长工具精品国语日语/永久免费的建站系统有哪些
  • 网站建设产品说明书/怎样做一个自己的网站
  • 有哪些网站可以做家教/今日头条新闻最新疫情
  • 网站内容策略/山东济南seo整站优化费用
  • 网站建设 摊销年限/搜索引擎优化自然排名
  • 网站做推广有用吗/青岛seo青岛黑八网络最强
  • 做的网站如何全屏代码/上海sem
  • php网站的优势/百度关键词排名点
  • 网站开发包含哪些/自动点击器怎么用
  • php建设网站所用开发软件/国家免费职业培训平台
  • 佛山专业网站制作设计/重庆seo排名公司
  • 广州大石附近做网站的公司/seo双标题软件
  • 网站规划在网站建设中的作用是/网络营销是什么专业类别
  • 网站被黑是怎么回事/赣州seo推广
  • 怎么做系统网站/上海已经开始二次感染了
  • ui设计做兼职的网站/西安seo全网营销
  • 怎么自己制作网站链接/企业网站建设服务
  • p2p网站的建设/批量优化网站软件
  • dedecms 食品网站模板/互联网广告平台排名
  • 如何通过建设网站赚钱/怎样进行网络营销吸引顾客
  • 开网店要建网站 一起的吗/网站怎么申请怎么注册
  • 深圳北斗部标平台网站建设/网络营销的概念是什么
  • 现在宁波做网站/扬州整站seo
  • ECS 安装wordpress/西安seo诊断
  • 做网站的公司经营范围/网站免费建站app