#include <stdio.h> int strlen(char a[]) { int res = 0; while (a[res] != '\0') { res++; } res--; return res; } int main() { char a[1000], b[1000]; int i = 1001; while (scanf("%s %s", a, b) != EOF) { // a[0] = a[0] + 1; // printf("%s",a); int len_a = strlen(a); int len_b = strlen(b); int max = (len_a > len_b ? len_a : len_b); char res[max + 2]; res[max + 1] = '\0'; int j, flag = 0; if (max == len_a) { j = len_b; for (int i = max; i >= 0; i--) { if (j == -1) { if (a[i] + flag > '9') { res[i + 1] = '0'; flag = 1; j++; } else { res[i + 1] = a[i] + flag; flag = 0; j++; } } else { if (a[i] + b[j] - '0' + flag > '9') { res[i + 1] = a[i] + b[j] - '0' + flag - 10; flag = 1; } else { res[i + 1] = a[i] + b[j] - '0' + flag; flag = 0; } } j--; } } else { j = len_a; for (int i = max; i >= 0; i--) { if (j == -1) { if (b[i] + flag > '9') { res[i + 1] = '0'; flag = 1; j++; } else { res[i + 1] = b[i] + flag; flag = 0; j++; } } else { if (b[i] + a[j] + flag - '0' > '9') { res[i + 1] = b[i] + a[j] - '0' + flag - 10; flag = 1; } else { res[i + 1] = b[i] + a[j] - '0' + flag; flag = 0; } } j--; } } if (flag == 1) { res[0] = '1'; for (int i = 0; i <= max + 1; i++) { printf("%c", res[i]); } printf("\n"); } else { for (int i = 1; i <= max + 1; i++) { printf("%c", res[i]); } printf("\n"); } } return 0; }