I have seen that mostly great programmers use scanf in C++ while they can use cin with ios::sync_with_stdio(false); cin.tie(NULL); I want to know why??
Sorry because I don't know how to put things into a block .... Thanks in advance .....
# | User | Rating |
---|---|---|
1 | tourist | 3993 |
2 | jiangly | 3743 |
3 | orzdevinwang | 3707 |
4 | Radewoosh | 3627 |
5 | jqdai0815 | 3620 |
6 | Benq | 3564 |
7 | Kevin114514 | 3443 |
8 | ksun48 | 3434 |
9 | Rewinding | 3397 |
10 | Um_nik | 3396 |
# | User | Contrib. |
---|---|---|
1 | cry | 167 |
2 | Um_nik | 163 |
3 | maomao90 | 162 |
3 | atcoder_official | 162 |
5 | adamant | 159 |
6 | -is-this-fft- | 158 |
7 | awoo | 156 |
8 | TheScrasse | 154 |
9 | Dominater069 | 153 |
10 | nor | 152 |
I have seen that mostly great programmers use scanf in C++ while they can use cin with ios::sync_with_stdio(false); cin.tie(NULL); I want to know why??
Sorry because I don't know how to put things into a block .... Thanks in advance .....
Name |
---|
People use scanf because when the amount of test case are small the speed of scanf is still faster, but when the amount exceeds 1e7 cin overtakes scanf
cin is faster than scanf for large inputs? I did not know about that, can you provide some reference for that?
Reference
cin faster on 32-bit integers.
scanf / printf
more powerful thancin / cout
because it use regular expressions.And it's more helpful in debug when we need to print some debug information:
UPD: u can easy use scanf / printf in this problem, my solution with
scanf, printf, sprintf
A lot of what you mentioned can also be done with cin/cout, but sometimes it's a bit harder.
when you use sync_with_stdio you can no longer use some convenient and fast ways of input / output