fork(5) download
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. const int MAX = 987654321;
  6.  
  7. int sum(char *s) /// 숫자 구하는 함수
  8. {
  9. int cnt = 0, n = 1;
  10. for(int i=1; i<strlen(s); i++) n *= 10;
  11. for(int i=0; i<strlen(s); i++){
  12. cnt += (s[i] - 48) * n;
  13. n /= 10;
  14. }
  15. return cnt;
  16. }
  17. int main()
  18. {
  19. ios::sync_with_stdio(false);
  20. cin.tie(NULL);
  21. cout.tie(NULL);
  22.  
  23. int cnt = 0, ans = 0;
  24. char num[5], s[51];
  25. bool isMinus = false;
  26.  
  27. cin >> s;
  28. fill(num, num + 5, '\0');
  29. for(int i = 0; i < strlen(s); i++){
  30. if(48 <= s[i] && s[i] <= 57){
  31. num[cnt++] = s[i]; /// 숫자를 저장하는 배열
  32. continue;
  33. }
  34. /// 연산자일때
  35. cnt = 0;
  36. if(isMinus) ans -= sum(num);
  37. else ans += sum(num);
  38.  
  39. if(s[i] == '-')isMinus = true;
  40. fill(num, num + 5, '\0');
  41. }
  42.  
  43. /// 마지막 수 처리
  44. if(isMinus) ans -= sum(num);
  45. else ans += sum(num);
  46.  
  47. cout << ans;
  48.  
  49. return 0;
  50. }
Success #stdin #stdout 0s 4700KB
stdin
99999
stdout
1410065407