1 solutions
-
0
C :
#include <stdio.h> int data[11] ; int main() { int n , k ; scanf("%d%d" , &k , &n ) ; data[0] = 1 ; for( int i = 1 ; i < 11 ; i ++ ) { data[i] = data[i-1] * k ; } int res = 0 ; int p = 0 ; while(n) { if(n&1)res += data[p] ; n/=2 ; p ++ ; } printf("%d\n" , res ) ; return 0 ; }C++ :
#include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<string> #include<cmath> #include<map> using namespace std; int main() { int m,n,k,t; int a[15]; cin>>m>>n; k=0; while(n>=1) { a[k++]=n%2; n/=2; } int sum=0; for(int i=0;i<=k;i++) if(a[i]==1) sum=pow(m,i)+sum; cout<<sum<<endl; return 0; }Java :
import java.util.Scanner; public class Main { static int n; static double m; static int[] data; static int count; public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); m=sc.nextDouble(); n=sc.nextInt(); data = new int[n]; Series(0); System.out.println(data[n-1]); } public static void Series(int t) { if(count==n) { return; } if(t==0) { data[count]=1; count++; Series(t+1); } else { data[count]=(int) Math.pow(m, t); count++; int s=count; for(int i=0;i<s-1;i++) { if(count==n) { return; } data[count]=(int) (data[i]+Math.pow(m, t)); count++; } Series(t+1); } } }
- 1
Information
- ID
- 16294
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By