1. 程式人生 > >HDU2033 人見人愛A+B【進位制】

HDU2033 人見人愛A+B【進位制】

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 49289    Accepted Submission(s): 32536


Problem Description HDOJ上面已經有10來道A+B的題目了,相信這些題目曾經是大家的最愛,希望今天的這個A+B能給大家帶來好運,也希望這個題目能喚起大家對ACM曾經的熱愛。
這個題目的A和B不是簡單的整數,而是兩個時間,A和B 都是由3個整陣列成,分別表示時分秒,比如,假設A為34 45 56,就表示A所表示的時間是34小時 45分鐘 56秒。

Input 輸入資料有多行組成,首先是一個整數N,表示測試例項的個數,然後是N行資料,每行有6個整數AH,AM,AS,BH,BM,BS,分別表示時間A和B所對應的時分秒。題目保證所有的資料合法。

Output 對於每個測試例項,輸出A+B,每個輸出結果也是由時分秒3部分組成,同時也要滿足時間的規則(即:分和秒的取值範圍在0~59),每個輸出佔一行,並且所有的部分都可以用32位整數表示。
Sample Input 2 1 2 3 4 5 6 34 45 56 12 23 34
Sample Output 5 7 9 47 9 30
Author lcy
Source

問題簡述

:參見上述連結。

問題分析題雖然簡單,要做得好實際上更加困難。

這裡主要考慮寫的程式要具有通用性,簡潔易懂。

通用性是程式設計師追求的目標,要不然就難以CV了。好的程式應該是CV到別的地方後,小改就可以用。

程式說明這個問題是個60進位制問題,兩個數分別放在兩個數組裡。

AC的C語言程式如下:

/* HDU2033 人見人愛A+B */

#include <stdio.h>

#define MAXN 3
#define R 60

int main(void)
{
    int n, timea[MAXN], timeb[MAXN], i;

    scanf("%d", &n);
    while(n--) {
        // 輸入兩組時間(下標從小到大是時分秒)
        for(i=0; i<MAXN; i++)
            scanf("%d", &timea[i]);
        for(i=0; i<MAXN; i++)
            scanf("%d", &timeb[i]);

        // 時間相加
        for(i=MAXN-1; i>0; i--) {
            timea[i] += timeb[i];       // 低位相加(結果放在timea)
            timea[i-1] += timea[i] / R; // 向高位進位(R進位制)
            timea[i] %= R;              // 低位得數(R進位制)
        }
        timea[0] += timeb[0];

        // 輸出結果
        for(i=0; i<MAXN; i++) {
            if(i != 0)
                printf(" ");
            printf("%d", timea[i]);
        }
        printf("\n");
    }

    return 0;
}

 

相關推薦

HDU2033 A+B

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 49289    Accepted Submission(s

杭電acm 1230 火星a+b

                          

Bailian2973 Skew數

2973:Skew數 總時間限制: 1000ms 記憶體限制: 65536kB 描述 在 skew binary表示中, 第 k 位的值xk表示xk(2k+1-1)。 每個位上的可能數字是0 或 1,最後面一個非零位可以是2, 例如, 10120(skew) = 1(25-1) + 0(24-1) + 1(2

HDU2031 轉換

進位制轉換 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 53748    Accepted Submiss

問題HDU2056A + B Again

A + B Again Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 15772    Accepted S

最後一個1轉換

1710: 最後一個1 時間限制: 1 Sec 記憶體限制: 128 MB 提交: 71 解決: 44 [提交][狀態][討論版] 題目描述 對於一個十進位制的數字x,將他轉化為2進位制,他的2進位制將由0和1組成,求裡面的最後一個1在第幾位 輸入 第一行輸入T,代

CCF NOI1076. 轉換遞迴轉換

時間限制: 1000 ms  空間限制: 262144 KB  具體限制   題目描述 用遞迴演算法將一個十進位制數X(1<=X<=10^9)轉換成任意進位制數M(2<=M<=16)。  輸入 一行兩個正整數X和M。 輸出 輸出X的M進位制

1027 Colors in Mars (20 分)10轉換為13

1027 Colors in Mars (20 分) People in Mars represent the colors in their computers in a similar way as the Earth people. That is, a color i

轉換天平稱重

用天平稱重時,我們希望用盡可能少的砝碼組合稱出儘可能多的重量。如果只有5個砝碼,重量分別是1,3,9,27,81則它們可以組合稱出1到121之間任意整數重量(砝碼允許放在左右兩個盤中)。本題目要求程式設計實現:對使用者給定的重量,給出砝碼組合方案。例如:使用者輸入:5程式輸出

HDU2010 水仙花數+入門

水仙花數 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 217918    Accepted Submiss

UVALive3520 UVa1590 POJ2799 IP Networks+運算

Time Limit: 1000MSMemory Limit: 65536KTotal Submissions: 2392Accepted: 919DescriptionAlex is administrator of IP networks. His clients hav

HDOJ2034 -> A-B

題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=2034 #include <iostream> #include <set> #include <algorithm> #include &

杭電2035A^B

#include<stdio.h> __int64 quick(int a,int b) { __int64 ans=1,base=a; __int64 t=0;

JustOj 1910: A+B

值範圍 c11 hide urn 題目 mat 多行 cout 輸出結果 [提交][狀態][討論版] 題目描述 北大的acm上面已經有10來道A+B的題目了,相信這些題目曾經是大家的最愛,希望今天的這個A+B能給大家帶來好運,也希望這個題目能喚起大家對

A+B

++ 時分秒 值範圍 otto AI 組成 行數 hdoj content Problem Description HDOJ上面已經有10來道A+B的題目了,相信這些題目曾經是大家的最愛,希望今天的這個A+B能給大家帶來好運,也希望這個題目能喚起大家對ACM曾經的熱愛。這個

hdu 2034 A-B

查看 accep 行數 color 還記得 accept con esc 結果 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submissi

hdu 2035 A^B

seve 程序 ron esc 組成 pid tdi other nbsp Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submissi

HDU - A-B

http://acm.hdu.edu.cn/showproblem.php?pid=2034 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Oth

HDU - A+B

http://acm.hdu.edu.cn/showproblem.php?pid=2033 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Oth

HDU-2035A^B

HDU-2035人見人愛A^B 題目: 求A^B的最後三位數表示的整數。 說明:A^B的含義是“A的B次方” Input 輸入資料包含多個測試例項,每個例項佔一行,由兩個正整數A和B組成(1<=A,B<=10000),如果A=0, B=0,則表示輸入資料的結束,不做處理。 Out