TopcoderArchive
Archive
Algorithm problem

ChangeDigit

Problem statement, definition, constraints, and public examples.

Problem Statement

给定一个正整数n. 你可以修改n的十进制表示中任意一位而得到另一个十进制表示的数,你修改后得到的新数需要严格小于n (这个新数可以有一些前导0).è¯·è¿”å›žæŒ‰ç §ä¸Šè¿°è¦æ±‚ä¿®æ”¹åŽå¾—åˆ°çš„æ•°ä¸­æœ€å¤§çš„ä¸€ä¸ªã€‚

Definition

Class:
ChangeDigit
Method:
change
Parameters:
int
Returns:
int
Method signature:
int change(int n)
(be sure your method is public)

Constraints

  • n 一个1到1,000,000,000 之间正整数。

Examples

  1. 123
    Returns: 122
    ä¿®æ”¹äº†å ¶ä¸­ä¸€ä½ä»¥åŽ, 我们可以得到如下一些小于n的数: 023, 103, 113, 120, 121, 和 122. å ¶ä¸­æœ€å¤§çš„æ•°æ˜¯ 122。
  2. 94040
    Returns: 94030
  3. 999999999
    Returns: 999999998
  4. 1000000000
    Returns: 0
    在这个样例中, 我们只有一种修改方案,即将首位的 '1' 替换成 '0' 以得到 "0000000000", 这是一个十进制表示的0 (有9个前导0)。
  5. 4321000
    Returns: 4320000
Back to all problems