Submission

Status:

---------

Subtask/Task Score:

0/100

Score: 0

User: modx9572

Problemset: บวกเลขฐาน

Language: cpp

Time: 0.003 second

Submitted On: 2025-09-30 13:22:54

#include <stdio.h>

int main() {
    int n = 0;
	char a[10005];
	int to[10005];
	int e[10005];    
    long long sum = 0, rem = 1;
    scanf("%s", a);
    for (int i = 0; a[i] != '\0'; i++) {
        n++;
    }
    for (int i = n-1; i >= 0; i--) {
        if (a[i] >= 'A' && a[i] <= 'F') {
            a[i] -= 55;
        } else a[i] -= '0';
        sum += a[i]*rem;
        rem *= 16;
    }
    int id = 0, n2 = 0;
    long long tem = sum;
    while (tem != 0) {
        to[id] = tem%2;
        tem /= 2;
        id++;
    }
    for (int i = id-1; i >= 0; i--) {
        printf("%d", to[i]);
    }
    printf("\n");
    id = 0;
    tem = sum;
    n2 = 0;
    while (tem != 0) {
        e[id] = tem%8;
        tem /= 8;
        id++;
    }
    for (int i = id-1; i >= 0; i--) {
        printf("%d", e[i]);
    }
}