#include<iostream>
#include<algorithm>
#include<cstdio>
#include<string>
#include<vector>
#include<string.h>
#include<map>
#include<cmath>
#include<queue>
#define ll long long
#define INF 0x7fffffff
#define MAX 0x3f3f3f3f
#define maxn 100005
#define ull unsigned long long
using namespace std;
int s[2005],d[2005],dp[2005];
int main()
{
int n,k,i,hh,mm,ss;
scanf("%d",&n);
while(n--)
{
scanf("%d",&k);
for(i=1;i<=k;i++)
dp[i]=MAX;
for(i=1;i<=k;i++)
scanf("%d",&s[i]);
for(i=1;i<k;i++)
scanf("%d",&d[i]);//下标为i,存的是第i和第i+1个人一起买
dp[1]=s[1];//初始化,dp[0]=0
for(i=2;i<=k;i++)
dp[i]=min(dp[i-1]+s[i],dp[i-2]+d[i-1]);
hh=dp[k]/3600;//分开表示 时分秒
mm=(dp[k]%3600)/60;
ss=dp[k]%60;
printf("%02d:%02d:%02d ",(hh+8)%24,mm,ss);//不够两位数就补0
if((hh+8)%24>12)//注意没有等于号
printf("pm\n");//下午
else
printf("am\n");//上午
}
return 0;
}
输出 上午am下午pm 的时 分 秒,不足两位就补0