24h購物| | PChome| 登入
2011-06-10 19:45:14| 人氣871| 回應0 | 上一篇 | 下一篇

d899. NOIP2010 1.数字统计

推薦 0 收藏 0 轉貼0 訂閱站台

http://zerojudge.tw/ShowProblem?problemid=d899

內容 :

请统计某个给定范围[L, R]的所有整数中,数字2 出现的次数。
比如给定范围[2, 22],数字2 在数2 中出现了1 次,在数12 中出现1 次,在数20 中出
现1 次,在数21 中出现1 次,在数22 中出现2 次,所以数字2 在该范围内一共出现了6
次。

輸入說明 :

输入共1 行,为两个正整数L 和R,之间用一个空格隔开。

輸出說明 :

输出共1 行,表示数字2 出现的次数。

範例輸入 :

输入样例1:
2 22
输入样例2:
2 100

範例輸出 :

输出样例1:
6
输出样例2:
20

提示 :

1 ≤ L ≤ R≤ 10000

出處 :

NOIP2010普及组第一题 (管理:liouzhou_101)

作法 : 窮舉
數據很小,窮舉無礙

/**********************************************************************************/
/*  Problem: d899 "NOIP2010 1.数字统计" from NOIP2010普及组第一题       */
/*  Language: C                                                                   */
/*  Result: AC (5ms, 251KB) on ZeroJudge                                          */
/*  Author: morris1028 at 2011-06-04 22:10:47                                     */
/**********************************************************************************/


#include<stdio.h>
main() {
    int L, R;
    while(scanf("%d %d", &L, &R) == 2) {
        int Ans = 0, t;
        for(; L <= R; L++) {
            t = L;
            while(t) {
                Ans += (t%10 == 2);
                t /= 10;
            }
        }
        printf("%d\n", Ans);
    }
    return 0;
}

台長: Morris
人氣(871) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 不分類 | 個人分類: 資訊競賽 |
此分類下一篇:d835. NOIP2003 1.乒乓球
此分類上一篇:d904. 換零錢

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文