#include <stdio.h> #include <stdint.h> uint16_t binary_to_uint(const char *str) { // Your logic here uint16_t num = 0; int i = 0; int length = 0; while(str[i++] != '\0'){ length++; } for(int j = length; j >=0 ; j--){ if(str[j] == '1'){ int val = 1; int k = length - j; while(k-- > 1){ val *= 2; } num += val; } } return num; } int main() { char bin[20]; scanf("%s", bin); printf("%u", binary_to_uint(bin)); return 0; }
Test Cases
Test Results
Input
1010
Expected Output
10