#include <stdio.h> #include <stdint.h> void print_base(uint16_t num, uint8_t base) { // Your logic here if (num == 0) { printf("0"); return; } char buffer[32]; uint8_t idx = 0; while (num > 0) { uint8_t rem = num % base; if (rem < 10) { buffer[idx++] = '0' + rem; }else { buffer[idx++] = 'A' + (rem - 10); } num /= base; } for (int8_t i = idx - 1; i >= 0; i--) { printf("%c", buffer[i]); } } int main() { uint16_t num; uint8_t base; scanf("%hu %hhu", &num, &base); print_base(num, base); return 0; }
Test Cases
Test Results
Input
10 2
Expected Output
1010