1.タイトルの説明
入力仕様:
各入力ファイルには、1つのスペースで区切られた、標準形式のAおよびBの行を占める1つのテストケースが含まれています。
出力仕様:
テストケースごとに、AとBの合計を入力と同じ形式で1行に出力する必要があります。
入力例:
3.2.1 10.16.27
出力例:
14.1.28
2、問題解決のアイデア
単純な加算シミュレーション問題。Knutの場合、2つを直接追加してから29を法としてモジュレーションします。2つの合計が29より大きい場合は、キャリー変数も1に変更する必要があります。残りの桁は同じです。
3、ACコード
#include<iostream>
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
int G[2], S[2], K[2];
void Add()
{
int g, s, k;
int carry = 0;
k = (K[0]+K[1])%29;
if(K[0] + K[1] >= 29) carry = 1;
s = (carry + S[0] + S[1])%17;
carry = carry + S[0] + S[1] >= 17 ? 1 : 0;
g = carry + G[0] + G[1];
printf("%d.%d.%d", g, s, k);
return;
}
int main()
{
scanf("%d.%d.%d", &G[0], &S[0], &K[0]);
scanf("%d.%d.%d", &G[1], &S[1], &K[1]);
Add();
return 0;
}