Each input file contains one test case which occupies a line with A and B in the standard form, separated by one space.
For each test case you should output the sum of A and B in one line, with the same format as the input.
3.2.1 10.16.27
14.1.28
#include <cstdio> using namespace std; struct money { int galleon, knut, sickle; public: money() {} money(int g, int s, int k): galleon(g), knut(k), sickle(s){} public: money operator+(const money &m) const{ money s; s.knut = knut + m.knut; s.sickle = sickle + m.sickle; s.galleon = galleon + m.galleon; s.sickle += (s.knut / 29); s.knut = s.knut % 29; s.galleon += (s.sickle / 17); s.sickle = s.sickle % 17; return s; } }; int main(){ int g, s, k; scanf("%d.%d.%d", &g, &s, &k); money m1(g, s, k); scanf("%d.%d.%d", &g, &s, &k); money m2(g, s, k); money m = m1 + m2; printf("%d.%d.%d\n", m.galleon, m.sickle, m.knut); return 0; }
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); String str1=sc.next(); String str2=sc.next(); String[] moneys1=str1.split("\\."); String[] moneys2=str2.split("\\."); int galleon,sickle,knuts; knuts=Integer.valueOf(moneys1[2])+Integer.valueOf(moneys2[2]); int flag=0; if(knuts>=29){ flag=1; knuts=knuts%29; } sickle=Integer.valueOf(moneys1[1])+Integer.valueOf(moneys2[1])+flag; flag=0; if(sickle>=17){ flag=1; sickle=sickle%17; } galleon=Integer.valueOf(moneys1[0])+Integer.valueOf(moneys2[0])+flag; System.out.println(galleon+"."+sickle+"."+knuts); } }
/** * 首先数据处理先读取一行字符串 * 然后进行字符串处理 * 把相应的Galleon,Sickle Knut读取出来并且读取的过程就开做加法 * 然后开始做相应的进位***作并行除数取余! * * */
import java.io.*; public class Main{ public static void main(String [] args)throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); int Galleon=0; int temp=1; int Sickle=0; int Knut=0; String comString=reader.readLine();// 把第一行的信息读取进来 int i=comString.length()-1; for(int j=5;j>=0;j--) { while (i >=0) { if (comString.charAt(i) == '.' || comString.charAt(i) == ' ') { temp=1; i--; break; } if(j==0||j==3) { Galleon+=(comString.charAt(i) - '0') *temp; } else if(j==1||j==4) { Sickle+=(comString.charAt(i) - '0') *temp; } else if(j==2||j==5) { Knut+=(comString.charAt(i) - '0') *temp; } i--; temp*=10; } } temp=Knut/29; Knut%=29; i=(Sickle+temp)/17; Sickle=(temp+Sickle)%17; Galleon+=i; System.out.println(Galleon+"."+Sickle+"."+Knut); } }
#include <iostream>
#include <string>
using namespace std;
int main() {
string s1, s2;
int a[7];
while (cin >> s1 >> s2) {
for (int i = 0; i < 6; i++) {
a[i] = 0;
}
int l1 = s1.size(), l2 = s2.size();
int tmp = 0;
int num = 0;
for (int i = 0; i < l1; i++) {
if (s1[i] >= '0'&&s1[i] <= '9') {
tmp = tmp * 10 + s1[i] - '0';
}
else if (s1[i] == '.') {
a[num] = tmp;
num++;
tmp = 0;
}
}
a[2] = tmp;
num++;
tmp = 0;
for (int i = 0; i < l2; i++) {
if (s2[i] >= '0'&&s2[i] <= '9') {
tmp = tmp * 10 + (s2[i] - '0');
}
else if (s2[i] == '.') {
a[num++] = tmp;
tmp = 0;
}
}
a[5] = tmp;
int carry = 0;
int ans[3] = { 0 };
ans[2] = (a[2] + a[5]) % 29;
carry = (a[2] + a[5]) / 29;
ans[1] = (a[1] + a[4] + carry) % 17;
carry = (a[1] + a[4] + carry) / 17;
ans[0] = a[0] + a[3] + carry;
cout << ans[0] << '.' << ans[1] << '.' << ans[2] << endl;
}
return 0;
}
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in=new Scanner(System.in); String[] s1=in.next().split("\\."); String[] s2=in.next().split("\\."); int[] a=new int[3]; int[] b={-1,17,29}; for(int i=2;i>=0;i--){ a[i]+=Integer.parseInt(s1[i]); a[i]+=Integer.parseInt(s2[i]); if(a[i]>=b[i] && b[i]>0){ a[i-1]++; a[i]%=b[i]; } } for(int i=0;i<3;i++){ System.out.print(a[i]); if(i!=2) System.out.print("."); } } }
import java.util.Scanner; public class Main{ private static final int[] W = {100000000,17,29}; public static void main(String[] args) { Scanner in = new Scanner(System.in); String[] a = in.next().split("\\."); String[] b = in.next().split("\\."); String[] result = new String[3]; int f = 0; for(int i = 2;i>=0;i--){ int r = Integer.parseInt(a[i])+Integer.parseInt(b[i])+f; f = r/W[i]; r = r%W[i]; result[i] = ""+r; } for(int i = 0;i<2;i++){ System.out.print(result[i]+"."); } System.out.println(result[2]); } }
#include<bits/stdc++.h> using namespace std; const int G=17*29; const int S=29; int main(){ int a[2],b[2],c[2]; scanf("%d.%d.%d %d.%d.%d",&a[0],&b[0],&c[0],&a[1],&b[1],&c[1]); long long x=a[0]*G+b[0]*S+c[0]; long long y=a[1]*G+b[1]*S+c[1]; long long z=x+y; cout<<z/G<<'.'<<z%G/S<<'.'<<z%S<<endl; return 0; }
#include <bits/stdc++.h> using namespace std; struct Coin { int a; int b; int c; Coin(int a, int b, int c) : a(a), b(b), c(c) {} }; struct Coin operator+(const struct Coin p1, const struct Coin p2) { int res_c = (p1.c + p2.c) % 29; int pre_c = (p1.c + p2.c) / 29; int res_b = (p1.b + p2.b + pre_c) % 17; int pre_b = (p1.b + p2.b + pre_c) / 17; int res_a = (p1.a + p2.a + pre_b); struct Coin p = { res_a, res_b, res_c }; return p; } int main() { int a1, b1, c1, a2, b2, c2; //scanf_s("%d.%d.%d %d.%d.%d", &a1, &b1, &c1, &a2, &b2, &c2); scanf("%d.%d.%d %d.%d.%d", &a1, &b1, &c1, &a2, &b2, &c2); struct Coin p1 = { a1, b1, c1 }; struct Coin p2 = { a2, b2, c2 }; struct Coin p3 = p1 + p2; printf("%d.%d.%d\n", p3.a, p3.b, p3.c); }
#include<iostream> using namespace std; int main() { int g1,s1,k1,g2,s2,k2,g,s,k; scanf("%d.%d.%d %d.%d.%d",&g1,&s1,&k1,&g2,&s2,&k2); g=g1+g2; s=s1+s2; k=k1+k2; if(k>28){ k-=29; s++; } if(s>16){ s-=17; g++; } cout<<g<<"."<<s<<"."<<k; return 0; }
x=input().strip().split(' ') a=x[0].split('.') b=x[1].split('.') c=[0,0,0] c[2]=int(a[2])+int(b[2]) if c[2]>=29: c[1]+=c[2]//29 c[2]=c[2]%29 c[1]+=int(a[1])+int(b[1]) if c[1]>=17: c[0]+=c[1]//17 c[1]=c[1]%17 c[0]+=int(a[0])+int(b[0]) print(c[0],c[1],c[2],sep='.')这题很简单
//模拟即可 #include <bits/stdc++.h> using namespace std; int A[5],B[5],C[5]; int main(){ char ignore; scanf("%d%c%d%c%d %d%c%d%c%d",&A[1],&ignore,&A[2],&ignore,&A[3],&B[1],&ignore,&B[2],&ignore,&B[3]); C[2]+=(A[3]+B[3])/29,C[3]=(A[3]+B[3])%29; C[1]+=(A[2]+B[2]+C[2])/17,C[2]=(A[2]+B[2]+C[2])%17; C[1]=A[1]+B[1]+C[1]; printf("%d.%d.%d\n",C[1],C[2],C[3]); return 0; }
#include <bits/stdc++.h> using namespace std; int main() { int a[3],b[3],c[3]; scanf("%d.%d.%d",&a[0],&a[1],&a[2]); scanf("%d.%d.%d",&b[0],&b[1],&b[2]); c[0]=c[1]=c[2]=0; c[2]=(a[2]+b[2])%29; c[1]+=(a[2]+b[2])/29+(a[1]+b[1])%17; c[0]+=(a[1]+b[1])/17+a[0]+b[0]; printf("%d.%d.%d",c[0],c[1],c[2]); return 0; }