#include<iostream> using namespace std; int znak_na_liczbe(char znak){ int liczba = 0; switch (znak) { case '0': liczba = 0; break; case '1': liczba = 1; break; case '2': liczba = 2; break; case '3': liczba = 3; break; case '4': liczba = 4; break; case '5': liczba = 5; break; case '6': liczba = 6; break; case '7': liczba = 7; break; case '8': liczba = 8; break; case '9': liczba = 9; break; } return liczba; } int main(){ std::ios_base::sync_with_stdio(false); std::cin.tie(NULL); string a, b; cin >> a >> b; if(a.length() < b.length()){ string c; c = a; a = b; b = c; } int dl = a.length(); int *wynik = new int [dl+1]; for(int i = 0; i < dl+1; i++){ wynik[i] = 0; } int j = b.length() - 1; int l = 0; for(int i = dl-1; i > -1 ; j--, i--, l++){ if(j < 0){ wynik[l] += znak_na_liczbe(a[i]); } else{ wynik[l] += znak_na_liczbe(a[i]) + znak_na_liczbe(b[j]); } if(wynik[l] > 9){ wynik[l] -= 10; wynik[l+1] += 1; } } if(wynik[dl] == 1){ cout << 1; } for(int i = dl - 1; i > -1; i--){ cout << wynik[i]; } wynik[0] = 1; delete[] wynik; return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | #include<iostream> using namespace std; int znak_na_liczbe(char znak){ int liczba = 0; switch (znak) { case '0': liczba = 0; break; case '1': liczba = 1; break; case '2': liczba = 2; break; case '3': liczba = 3; break; case '4': liczba = 4; break; case '5': liczba = 5; break; case '6': liczba = 6; break; case '7': liczba = 7; break; case '8': liczba = 8; break; case '9': liczba = 9; break; } return liczba; } int main(){ std::ios_base::sync_with_stdio(false); std::cin.tie(NULL); string a, b; cin >> a >> b; if(a.length() < b.length()){ string c; c = a; a = b; b = c; } int dl = a.length(); int *wynik = new int [dl+1]; for(int i = 0; i < dl+1; i++){ wynik[i] = 0; } int j = b.length() - 1; int l = 0; for(int i = dl-1; i > -1 ; j--, i--, l++){ if(j < 0){ wynik[l] += znak_na_liczbe(a[i]); } else{ wynik[l] += znak_na_liczbe(a[i]) + znak_na_liczbe(b[j]); } if(wynik[l] > 9){ wynik[l] -= 10; wynik[l+1] += 1; } } if(wynik[dl] == 1){ cout << 1; } for(int i = dl - 1; i > -1; i--){ cout << wynik[i]; } wynik[0] = 1; delete[] wynik; return 0; } |