На вході маємо ціле число, яке запитується у користувача. Програма переводить його в текст та виводить результат, додаючи до нього символ "!" в кінець (не використовувати додаткові повідомлення); (программа Python)
А) var s:string; mas:array ['a'..'z'] of longint;{индексы элементов соответствуют латинице} c:char; i:longint; begin read(s); for c:='a' to 'z' do{заполнение нулями элементов массива, для запоминания количества элементов в латинице} mas[c]:=0; for i:=1 to ord(s[0]) do{пробегаем по всей строке ord(s[0]) это количесвто элементов в строке (только паскаль)} mas[s[i]]:=mas[s[i]]+1; for c:='a' to 'z' do{пробегаем по массиву значений и выводим только неповторяющиеся} if(mas[c]=1) then writeln(c); end.
#include <iostream>
typedef long long ll;
using namespace std;
bool ll_is_valid(ll t, ll N, ll x, ll y)
{
return t / x + (t - x) / y >= N;
}
ll f(ll N, ll x, ll y)
{
ll R = 1;
while (!ll_is_valid(R,N,x,y)) R *= 2;
ll L = R / 2;
while(R - L > 1)
{
ll M = (L + R) / 2;
if (!ll_is_valid(M,N,x,y)) {L = M;}
else {R = M;}
}
return R;
}
int main()
{
ll N,x,y;
cin >> N >> x >> y;
if(x > y) swap( x, y );
cout << f(N, x, y) << std::endl;
}
var s:string; mas:array ['a'..'z'] of longint;{индексы элементов соответствуют латинице} c:char; i:longint; begin read(s); for c:='a' to 'z' do{заполнение нулями элементов массива, для запоминания количества элементов в латинице} mas[c]:=0; for i:=1 to ord(s[0]) do{пробегаем по всей строке ord(s[0]) это количесвто элементов в строке (только паскаль)} mas[s[i]]:=mas[s[i]]+1; for c:='a' to 'z' do{пробегаем по массиву значений и выводим только неповторяющиеся} if(mas[c]=1) then writeln(c); end.