NYOJ 201 作業題 基礎dp

2021-08-16 23:16:52 字數 1245 閱讀 6009

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:3描述

小白同學這學期有一門課程叫做《數值計算方法》,這是一門有效使用數字計算機求數學問題近似解的方法與過程,以及由相關理論構成的學科……

今天他們的teacher s,給他們出了一道作業題。teacher s給了他們很多的點,讓他們利用拉格朗日插值公式,計算出某嚴格單調函式的曲線。現在小白抄下了這些點,但是問題出現了,由於我們的小白同學上課時走了一下神,他多抄下來很多點,也就是說這些點整體連線不一定還是嚴格遞增或遞減的了。這可怎麼處理呢。為此我們的小白同學制定了以下的取點規則:

1、取出盡可能多的滿足構成嚴格單調曲線的點,作為曲線上的點。

2、通過拉格朗日插值公式,計算出曲線的方程

但是,他又遇到了乙個問題,他發現他寫下了上百個點。[- -!佩服吧],這就很難處理了(o_o).。由於拉格朗日插值公式的計算量與處理的點數有關,因此他請大家來幫忙,幫他統計一下,曲線上最多有多少點,以此來估計計算量。

已知:沒有任何兩個點的橫座標是相同的。輸入

本題包含多組資料:

首先,是乙個整數t,代表資料的組數。

然後,下面是t組測試資料。對於每組資料報含兩行:

第一行:乙個數字n(1<=n<=999),代表輸入的點的個數。

第二行:包含n個數對x(1<=x<=10000),y(1<=y<=10000),代表所取的點的橫縱座標。

輸出每組輸出各佔一行,輸出公乙個整數,表示曲線上最多的點數

樣例輸入

2

21 2 3 4

32 2 1 3 3 4

樣例輸出

2

2

//吐槽:不就多寫了一步判斷橫座標的嗎!!!就不給過,讓我感覺著測試資料有問題!!!!

#include#include#include#includeusing namespace std;

struct node

a[1000+10];

int dp[1000+10];

int cmp(node a,node b)

}ansl=max(ansl,dp[i]);

} for(int i=0; i}

ansr=max(ansr,dp[i]);

} printf("%d\n",max(ansl,ansr));

} return 0;

}//ac

nyoj201作業題 最長遞增 減 子串行

時間限制 3000 ms 記憶體限制 65535 kb 難度 3描述 小白同學這學期有一門課程叫做 數值計算方法 這是一門有效使用數字計算機求數學問題近似解的方法與過程,以及由相關理論構成的學科 今天他們的teacher s,給他們出了一道作業題。teacher s給了他們很多的點,讓他們利用拉格朗...

南陽 201 作業題

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 小白同學這學期有一門課程叫做 數值計算方法 這是一門有效使用數字計算機求數學問題近似解的方法與過程,以及由相關理論構成的學科 今天他們的teacher s,給他們出了一道作業題。teacher s給了他們很多的點,讓他們利用拉格...

Python 語言基礎 作業題

print abc nd abc d print r abc nd abc nd print abc nd abc nd print abc nd abc d從鍵盤輸入乙個正整數,然後求出它的個位數 十位數 百位數 千位數和萬位數,並按樣例的格式輸出。要求 可使用運算子 與 不允許使用map函式 輸...