首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

價格荒謬度計算:去除尾部零後按長度與末位 5 判定

     編輯:程式設計疑難解答

荒謬度定義

  1. 價格 p 視為字符串,去除末尾所有 0。
  2. 設剩餘長度為 a。
  3. 若末位為 5 → 荒謬度 = 2*a - 1;否則 = 2*a。

樣例

  • 850 → "85" (去掉 0),a=2,末位 5 → 2*2-1=3。
  • 880 → "88",a=2,末位 8 → 4。
  • 9999 無尾零,a=4,末位 9 → 8。

算法

對區間 [L, R] 內每個價格計算荒謬度,取最小;相同取最小價格。直接遍歷在 R ≤ 10^9 可行,若 R 極大需數學構造 (構造形如 10^k、5*10^k 等候選)。

參考

價格荒謬度問題解析

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved