Problem: A. Cut and Paste when i am using
s=s+t; [this is giving me TLE on 37 test ] [128332169](https://codeforces.me/contest/1280/submission/128332169)
and s+=t; is Accepted 128332405 20 ms
can anyone tell me why such happen.???
| # | User | Rating |
|---|---|---|
| 1 | Benq | 3676 |
| 2 | Kevin114514 | 3659 |
| 3 | jiangly | 3640 |
| 4 | turmax | 3450 |
| 5 | tourist | 3382 |
| 6 | strapple | 3360 |
| 7 | Um_nik | 3354 |
| 8 | squareOf105 | 3348 |
| 9 | maroonrk | 3312 |
| 10 | idontwannadothis…e | 3191 |
| # | User | Contrib. |
|---|---|---|
| 1 | Qingyu | 155 |
| 2 | nik_exists | 151 |
| 3 | maspy | 149 |
| 4 | AmShZ | 145 |
| 5 | Um_nik | 143 |
| 6 | Errichto | 139 |
| 7 | BledDest | 136 |
| 8 | adamant | 134 |
| 9 | maroonrk | 132 |
| 10 | cry | 130 |
Problem: A. Cut and Paste when i am using
s=s+t; [this is giving me TLE on 37 test ] [128332169](https://codeforces.me/contest/1280/submission/128332169)
and s+=t; is Accepted 128332405 20 ms
can anyone tell me why such happen.???
| Name |
|---|



s = s + t;this line will create new string object with values + tand assign it tos, complexity $$$O(|s| + |t|)$$$s += t;this line just simply appendttos, complexity $$$O(|t|)$$$This code produced the following output on my system
So avoid using assignment operator!
Thanks. Found where i am wrong.
When I'm running your code on Dev C++ it is printing 0 0, but in the online C++ compiler, it is giving the right answer. Can you please tell me what is wrong with the Dev C++ compiler? Thank You:)
I guess
CLOCKS_PER_SECon your system has the value 1000. So just add consuming stuff between 2clock()call, you'll see the difference:For better precision, I suggest using chrono. IMO using
clock()is better as it's really easy to remember the syntax.I think the '+' operator's complexity is O(2*(n1 + n2)), where n1 and n2 are the lengths of the strings s and t.
The complexity of the operator '+=' might only be O(2*n2) in some implementations on the other hand as only the append() operation is to be performed.
A Stack Overflow Thread
If there is a huge difference between the lengths of s and t, this could effectively work out as the difference between an O(N) algorithm and an O(1) algorithm, and could possibly lead to TLE.
Click