Виклик
Напишіть не порожню програму / функцію, pяка, даючи не порожній рядок вводу s, виводить позицію першого появи кожного символу sу вихідному коді p.
Наприклад, якщо ваша програма
main() { cout << magic << cin }
^0 ^5 ^10 ^15 ^20 ^25
і він отримує вхід abcd{, вихід повинен бути
[1, x, 9, x, 7] (0-based) [2, x, 10, x, 8] (1-based)
Тут, xпредставляє будь-якої висновок , який не є допустимим для виведення позиції символу (наприклад, негативне число, 0якщо ви використовуєте індексацію 1 на основі, NaN, Inf, рядок potato, число більше довжини вашої програми, і т.д.).
Обмеження
Читання вихідного коду заборонено (як, наприклад, у правильній квинті). Використання коментарів дозволено, але враховується ваш результат.
Введення і виведення можуть бути зроблені в прийнятному форматі, але вони повинні бути однозначними (тільки додаткові роздільники, немає randпотоку , і стверджуючи , що відповідь де - то там), в відповідності (наприклад, xзверху завжди має бути таким же значення) і людино читабельний ; наприклад, рядок або символьний масив. Можна припустити, що вхід - це рядок (або масив) друкованих символів ASCII; не потрібно обробляти весь набір Unicode.
Користувацька кодова сторінка або недрукований файл ascii у вашому коді?
Якщо у вашій мові використовується користувацька сторінка коду (Jelly, APL тощо), ви повинні це врахувати (тому програма €æÆповинна виводити [1, x, 2]для введення даних €%æ). Використання лише символів, що не належать до ASCII, для виводу -1завжди (оскільки вхід є лише ASCII), не є правильним рішенням. Ви можете припустити, що ваша програма спочатку приймає вашу власну кодову сторінку, тобто якщо у вашій програмі є метод перетворення символу Aв ціле число 65(кодування ASCII), ви можете припустити, що тепер він перетворює 65-й символ у вашій кодовій сторінці 65.
Натхненний наступним викликом: Позитивна обізнаність
01030708070,?