jzoj 2546. 【NOIP2011模拟9.3】遥控车
来源:互联网 发布:数据库基础教程视频 编辑:程序博客网 时间:2024/04/29 01:09
题目描述
平平带着韵韵来到了游乐园,看到了n 辆漂亮的遥控车,每辆车上都有一个唯一的名字name[i]。韵韵早就迫不及待地想玩名字是s 的遥控车。可是韵韵毕竟还小,她想象的名字可能是一辆车名字的前缀(也就是说能确定一个i,使s 是name[i]的前缀),这时她就能玩第i 辆车;或者是一个无中生有的名字,即s 不是任何一辆车名字的前缀,这时候她什么也不能玩。
你需要完成下面的任务:
1.韵韵想了m 个她想要的名字,请告诉她能玩多少次。
2.由于管理员粗心的操作,导致每辆车的摆放位置都可能出现微小的差错,原来第i 辆车现在的位置可能是i-1、i、i+1 中的任意一个(第1 辆车的位置不可能是0,第n辆车的位置不可能是n+1)。请你计算出共有多少种可能的排列。
注:数据保证当s 是name[i]的前缀时,i 是唯一确定的。一辆车可以玩多次。
输入
第一行是2 个正整数n、m。
接下来n 行,每行1 个字符串name[i],表示第i 辆车的名字。接下来m 行,每行1 个字符串s,表示韵韵想要的名字。
输出
第一行输出韵韵能玩的次数。第二行输出共有多少种可能的排列。
思路
前一个问题很简单,就是字符串的简单运用,后一问是n-1的高精度斐波那契数列,
所以这题就很简单了,但要注意时间如果直接进行字符操作的话会超时,所以我们可以根据字符串的长度进行一次排序,如果想要的名字长度比车的名字长度要大的话就可以直接结束了
var a,b:Array [0..100001,1..10] of longint; f:array [0..100020] of longint; num:array [1..10] of longint; n,i,j,time,x:longint;procedure qsort(l,r,x:longint); vari,j,mid,temp:longint;begin ifl>=r then exit; mid:=a[l+random(r-l+1),x]; i:=l; j:=r; repeat while a[i,x]>mid do inc(i); while a[j,x]<mid do dec(j); ifi<=j then begin temp:=a[i,x]; a[i,x]:=a[j,x]; a[j,x]:=temp; inc(i); dec(j); end; until i>j; qsort(l,j,x); qsort(i,r,x);end;begin readln(n,time); fori:=1 to n do begin read(x); inc(num[x]); read(a[num[x],x]); end; fori:=1 to 10 do qsort(1,num[i],i); fori:=0 to time do begin for j:=1 to 10 do begin if b[i,j]<num[j] then begin if f[i+j]<f[i]+a[b[i,j]+1,j] then begin f[i+j]:=f[i]+a[b[i,j]+1,j]; b[i+j]:=b[i]; b[i+j,j]:=b[i,j]+1; end; end; end; end; write(f[time]);end.
1 0
- jzoj 2546. 【NOIP2011模拟9.3】遥控车
- jzoj 2545. 【NOIP2011模拟9.3】跳舞
- jzoj 2544. 【NOIP2011模拟9.3】作弊的发牌者
- jzoj 2542. 【NOIP2011模拟9.1】统计
- jzoj 2543. 【NOIP2011模拟9.1】直角三角形
- jzoj 2548. 【NOIP2011模拟9.4】最大正方形
- jzoj 2549. 【NOIP2011模拟9.4】家庭作业
- jzoj 2553. 【NOIP2011模拟9.7】射命丸文
- jzoj 2567. 【NOIP2011模拟9.17】电话时间
- jzoj 2568. 【NOIP2011模拟9.17】地铁建设
- Jzoj 2555. 【NOIP2011模拟9.7】雾雨魔理沙
- jzoj 2557. 【NOIP2011模拟9.9】单词分类
- jzoj 2558. 【NOIP2011模拟9.9】过河问题
- jzoj 2559. 【NOIP2011模拟9.9】最短路
- jzoj 2541. 【NOIP2011模拟9.1】方格取数
- jzoj 2554. 【NOIP2011模拟9.7】帕秋莉·诺蕾姬
- jzoj 2570. 【NOIP2011模拟9.17】数字生成游戏
- JZOJ 2555【NOIP2011模拟9.7】雾雨魔理沙 几何计算&动态规划
- pthread_join和pthread_detach详解
- Android BLE 蓝牙低功耗教程,中央BluetoothGatt和周边BluetoothGattServer的实现
- Volley StringRequest和JSONObjectRequest使用几个细节
- Android中比较好用的框架
- 我常去逛得blog..
- jzoj 2546. 【NOIP2011模拟9.3】遥控车
- 从零学React Native之08Image组件
- Trie树与Trie图的学习
- 如何用摄像头来测距(opencv)
- 便携式果汁机电机霍尔开关 FS3144 MH251
- 压缩图片
- HDU 5781 ATM Mechine(概率dp)
- win 10 安装Ubuntu和CentOS 感悟
- 旅行_纪中2547_枚举