Double না হইলে pow ফাংশন ব্যবহার না করাই ভাল। কারন এইটা রিয়েল নাম্বার আউটপুট দিবে, রাউন্ডিং ইরর হয়ার চান্স আছে। তুমি আলাদা কইরা পাওয়ার ফাংশন লিখা করতে পার কাজটা। আমি সেইটাই করি সাধারনত। নতুন যারা তারা চেষ্টা কর O(lg N) এ $a^N$ বাইর করতে যেখানে a,N উভয়ে integer (as defined in C).Zzzz wrote:#ইঞ্চলুদে<স্তদিও।হ>
#ইঞ্চলুদে<মাথ।হ>
আমি অভ্র চালু করে লেখা শুরু করছিলাম, খেয়াল করি নাই। মনিটরে তাকায়ে বেশ মজা লাগলো। তাই আর কাটলাম না
Here is the code:
#include<stdio.h>
#include<math.h>
int main()
{
int i,n,k,sum;
scanf("%d %d",&n,&k);
sum=0;
for(i=1;i<=n;i++)
sum=sum+ (n+i-1) * pow(i,k);
printf("%d",sum);
return 0;
}
ok ?
যারা আরো অভিজ্ঞ, তারা মুল সমস্যাটা (i.e Given n and k , evaluate $1^k + 2^k + ... + n^k$) O(lg N) এ করার চেষ্টা কর। প্রথমে O(n) ট্রাই করা যাইতে পারে। সমাধান খুবই সুন্দর, আমি অন্তত ১২ রকমের সমাধান দেখছি এখন পর্যন্ত।