Я использовал cin.sync()
в своем коде, и теперь он дает разные выходы в разных IDE.
ll n, k;
cin >> n >> k;
string s(n, 'a');
cin.sync();
double d = 1 + 8*k;
double p =(1.0+(float)sqrt(d))/2.0;
ll f = ceil(p);
ll res = f-1;
res = res*(res-1);
res = res/2;
res=res+1;
ll pr = k-res;
s[n-f]='b';
s[n-1-pr]='b';
cout << s << endl;
В IDE codeforces он дает ОДИН И ТО ЖЕ ВЫХОД, первый правильный ответ, для всех СЛУЧАЙ ИСПЫТАНИЙ .
Скажем, решение первого контрольного примера - «abbaa», оно будет печатать то же самое и для остальных контрольных примеров.
Но в IDE-кодефе это дает РАЗНЫЙ ВЫХОД для всех СЛУЧАИ ИСПЫТАНИЯ. (правильные ответы для всех тестовых случаев)
Как только я удалил cin.sync()
, обе среды IDE показали одинаковые правильные ответы.
Почему это так?