HDU2033 人見人愛A+B【進位制】
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
【進位制問題】【HDU2056】A + 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
【HDOJ】2034 -> 人見人愛A-B
題目連結:http://acm.hdu.edu.cn/showproblem.php?pid=2034 #include <iostream> #include <set> #include <algorithm> #include &
【杭電2035】人見人愛A^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-2035人見人愛A^B
HDU-2035人見人愛A^B 題目: 求A^B的最後三位數表示的整數。 說明:A^B的含義是“A的B次方” Input 輸入資料包含多個測試例項,每個例項佔一行,由兩個正整數A和B組成(1<=A,B<=10000),如果A=0, B=0,則表示輸入資料的結束,不做處理。 Out