Biểu thức tổng đặc biệt
Submit solution
Points:
3
Time limit:
1.0s
Memory limit:
250M
Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Cho một xâu S chỉ gồm các chữ số từ '1' đến '9'. Bạn có thể thêm một vài dấu '+' và giữa 2 chữ số bất kỳ để tạo thành một biểu thức tổng. Chú ý không được chèn 2 dấu '+' liên tiếp nhau hoặc chèn vào đầu và cuối xâu. Nhiệm vụ của bạn là tính tổng tất cả các giá trị của các biểu thức tổng thu được theo cách mô tả trên.
Input:
- Dòng đầu tiên gồm xâu S, |S| là ký hiệu độ dài xâu.
Output:
Giá trị tổng thu được của tất cả các biểu thức có thể tạo ra.
Example 1:
Input:
Copy
345
Output:
Copy
444
Explanation:
- Có 4 biểu thực có thể được tạo ra là 345, 34 + 5, 3 + 45, 3 + 4 + 5.
- Giá trị của từng biểu thức là :
- 345
- 34 + 5 = 39
- 3 + 45 = 48
- 3 + 4 + 5 = 12
- Tổng các giá trị là : 345 + 39 + 48 + 12 = 444
Example 2:
Input:
Copy
999999999
Output:
Copy
1265621760
Comments
include <iostream>
include <string>
include <cmath>
using namespace std;
long long calculateSum(string s) { int n = s.length(); int numExpressions = pow(2, n - 1); long long sum = 0;
}
int main() { string s; cout << "Nhập xâu S: "; cin >> s;
}