问题:
样例输入
2 10:37:49 00:00:01
样例输出
1 011001100010100011 001010100101110001 2 000000000000000001 000000000000000001
题意:将时间按照题意竖向和横向输出 回答:#include <stdio.h> #include <string.h> #include <algorithm> using namespace std; int main() { int h,m,s,t,i,j,cas = 1; char c1[10],c2[10],c3[10],r1[10],r2[10],r3[10]; scanf("%d",&t); while(t--) { memset(c1,‘0‘,sizeof(c1)); memset(c2,‘0‘,sizeof(c2)); memset(c3,‘0‘,sizeof(c3)); scanf("%d:%d:%d",&h,&m,&s); i = 0; while(h) { int r = h%2; c1[i++] = r+‘0‘; h/=2; } i = 0; while(m) { int r = m%2; c2[i++] = r+‘0‘; m/=2; } i = 0; while(s) { int r = s%2; c3[i++] = r+‘0‘; s/=2; } printf("%d ",cas++); for(i = 5;i>=0;i--) printf("%c%c%c",c1[i],c2[i],c3[i]); printf(" "); for(i = 5;i>=0;i--) printf("%c",c1[i]); for(i = 5;i>=0;i--) printf("%c",c2[i]); for(i = 5;i>=0;i--) printf("%c",c3[i]); printf("\n"); } return 0; }
时间: 2024-12-16 06:12:46