3 solutions

  • 0
    @ 2025-2-6 11:54:15
    // https://dashoj.com/p/96
    #include <bits/stdc++.h>
    
    using namespace std;
    typedef long long ll;
    
    string s;
    int base, power = 0;
    ll result = 0;
    
    int main() {
    	cin >> s >> base;
    	for (int i = s.size() - 1; i >= 0; i--) {
    		int value;
    		if (isdigit(s[i])) value = s[i] - '0';
    		else value = s[i] - 'A' + 10;
    		result += value * pow(base, power);
    		power++;
    	}
    	cout << result << endl;
    	return 0;
    }
    
    • 0
      @ 2024-4-7 15:44:43

      用 1001 分别以二进制、八进制、十六进制转成十进制

      • 二进制 1001 转十进制

        • 120+021+022+1231 * 2^{0}+0 * 2^{1}+0 * 2^{2}+1 * 2^{3}
      • 八进制 1001 转十进制

        • 180+081+082+1831 * 8^{0}+0 * 8^{1}+0 * 8^{2}+1 * 8^{3}
      • 十六进制 1001 转十进制

        • 1160+0161+0162+11631 * 16^{0}+0 * 16^{1}+0 * 16^{2}+1 * 16^{3}

      对于小数, 则是 aK1+aK2+...a * K^{-1} + a * K^{-2} + ...

      输入一个 xx 进制数, 把它转化为 十进制!

      #include <iostream>
      #include <string>
      
      using namespace std;
      
      int main() {
      	string str;
      	int jz;
      	cin >> str >> jz;
      	
      	long long res = 0;
      	long long k = 1;
      	for (int i = str.size() - 1; i >= 0; --i) {
      		if ('0' <= str[i] && str[i] <= '9') {
      			res += (str[i] - '0') * k;
      		} else {
      			res += (10 + str[i] - 'A') * k;
      		}
      		k *= jz;
      	}
      	
      	cout << res << endl;
      	
      	return 0;
      }
      
      • 0
        @ 2024-4-7 15:15:17

        #include <bits/stdc++.h>

        using namespace std; int main(){ string s; long long ans=0;//必须让自定义函数等于0 否则就会再下列计算中 自己加上自己的asall值 int k=0, base=0; cin>> s >> base;

        for ( int i=s.size()-1;i>=0; i--){ //缺失了条件 if (s[i]>='A' ){ ans += ( s[i]-'A'+10 )* pow( base, k++); } else { ans += (s[i]-'0')* pow( base,k++); }

        } cout << ans<<endl;

        return 0;
        

        }

        • 1

        Information

        ID
        96
        Time
        1000ms
        Memory
        256MiB
        Difficulty
        3
        Tags
        # Submissions
        166
        Accepted
        88
        Uploaded By