每日一題之 hiho1770 單調數

2021-08-21 11:14:04 字數 1289 閱讀 3646

描述

乙個數是單調的,當且僅當它十進位制下的每個數字組成的陣列是單調不降或者單調不增的。

例如 123 和 321 和 221 和 111 是單調的,而 312 不是單調的。

給定 l, r,求[l, r]中有幾個單調的數。

輸入 第一行乙個正整數 t 表示詢問組數

接下來 t 行,每行兩個正整數 l,r,保證 l ≤ r

1 ≤ l ≤ r ≤ 1018

1 ≤ t ≤ 104

輸出 對於每次詢問,輸出一行,一行裡只有乙個非負整數,表示單調的數的個數

樣例輸入

1 1 150

樣例輸出

131數字dp,dp[i][j][k] 表示第i位數字j的k種狀態,0:

j==pr

e,1:

je,2:

j>pr

e 0:j

==pre

,1:j

e,2:

j>pr

e這裡 pre 記錄前一位的數字,注意狀態之間的轉移,好題!這幾天太忙就沒更,等閒下來再好好補充詳細的過程

#include 

#include

#include

using

namespace

std;

const

int maxn = 1e3;

long

long dp[20][10][3]; //dp[i][j][k] 表示第i位數字j的3種狀態,0 : j == pre, 1: j < pre , 2: j > pre

int digit[20];

void init()

if(k!=1) }}

}}long

long solve(long

long x)

long

long res = 0;

for (int i = 1; i < len; ++i)

int k = 0;

for (int i = len-1; i >= 0; --i)

else

if (k == 0)

else

if (k == 1)

else

}if (i == len-1)

continue;

if (k == 0)

else }}

if (k != -1) ++res;

return res;

}int main()

}

每日一題之 hiho1744 hohahola

描述 有一種叫作hohahola的飲料,售價是x元一瓶。小hi非常喜歡這種飲料,但是他現在身無分文。不過小hi有n張優惠券,買hohahola時每瓶最多使用一張優惠券,可以使該瓶 減少y元。y x 同時優惠券可以 小hi每 一張優惠券可以獲得z元。請你幫小hi計算通過 若干優惠券,他最多可以買多少瓶...

每日一題之 hiho1304 24點

週末,小hi和小ho都在家待著。在收拾完房間時,小ho偶然發現了一副撲克,於是兩人考慮用這副撲克來打發時間。小ho 玩點什麼好呢?小hi 兩個人啊,不如來玩24點怎麼樣,不靠運氣就靠實力的遊戲。小ho 好啊,好啊。經過若干局遊戲之後 小ho 小hi,你說如果要寫個程式來玩24點會不會很複雜啊?小hi...

每日一題 單調數列

如果陣列是單調遞增或單調遞減的,那麼它是單調的。如果對於所有 i j,a i a j 那麼陣列 a 是單調遞增的。如果對於所有 i j,a i a j 那麼陣列 a 是單調遞減的。當給定的陣列 a 是單調陣列時返回 true,否則返回 false。示例 1 輸入 1,2,2,3 輸出 true 示例...