1996: [Hnoi2010]chorus 合唱队

1996: [Hnoi2010]chorus 合唱队

Time Limit: 4 Sec  Memory Limit: 64 MB
Submit: 1057  Solved: 681
[Submit][Status][Discuss]

Description

Input

Output

Sample Input

4
1701 1702 1703 1704

Sample Output

8

HINT

 

Source

 

 
题解:萌萌哒DP题,其实和我一开始想的暴力方法很接近,基本上就是记忆化暴力,然后转变为循环形式(HansBug:无后效性这玩意就是爽^_^),然后就只管AC啦
(PS:不过话说第一遍的记忆化暴力WA掉了是What Ghost???)
复制代码
 1 /**************************************************************
 2     Problem: 1996
 3     User: HansBug
 4     Language: Pascal
 5     Result: Accepted
 6     Time:108 ms
 7     Memory:8172 kb
 8 ****************************************************************/
 9  
10 const p=19650827;
11 var
12    i,j,k,l,m,n:longint;
13    c:array[0..10000] of longint;
14    a:array[0..1005,0..1005,1..2] of longint;
15 begin
16      readln(n);
17      for i:=1 to n do
18          begin
19               read(c[i]);
20               a[i,i,0]:=1;
21          end;
22      readln;
23      for i:=n-1 downto 1 do
24          for j:=i+1 to n do
25              begin
26                   a[i,j,0]:=0;a[i,j,1]:=0;
27                   if c[i]<c[i+1] then inc(a[i,j,0],a[i+1,j,0]);
28                   if c[i]<c[j] then inc(a[i,j,0],a[i+1,j,1]);
29                   if c[j]>c[i] then inc(a[i,j,1],a[i,j-1,0]);
30                   if c[j]>c[j-1] then inc(a[i,j,1],a[i,j-1,1]);
31                   a[i,j,0]:=a[i,j,0] mod p;
32                   a[i,j,1]:=a[i,j,1] mod p;
33              end;
34      writeln((a[1,n,1]+a[1,n,0]) mod p);
35      readln;
36 end.
复制代码

 

 
posted @   HansBug  阅读(339)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示