Posts

Showing posts from September, 2019

প্রাইম ফ্যাক্টরাইজেশন বের করার জন্য কিছু কোড

প্রাইম ফ্যাক্টরাইজেশন বের করার জন্য  এই কোডটা আমার কাছে অনেক সহজ মনে হয়। তবে এটা বড় সংখ্যার ক্ষেত্রে  সিভ অব ইরাথোসথেনেস এর মত কাজ করে। #include <bits/stdc++.h> #define ll long long using namespace std ; bool is_prime ( long n ) { if ( n < 2 ){ return false ; } for ( long i = 2 ; i * i <= n ; i ++ ) { if (( n % i ) == 0 ){ return false ; } } return true ; } int main () { long num ; cin >> num ; cout << "prime factor number are " << num << ": " ; for ( int i = 0 ; i <= num ; i ++ ){ if ( is_prime ( i ) && num % i == 0 ){ cout << i << ' ' ; } } } #কোড 2: #include <bits/stdc++.h> using namespace std ; void prime_factor ( int n ) { while ( n % 2 == 0 ) { printf ( "%d " , 2 ); n = n /

Basic Code

#  L থেকে R রেঞ্জ  এর  মধ্যে নাম্বার দেওয়া থাকবে এদের মধ্যে যোগফল নির্নয় করতে হবে।  N এর মান 1<=N<=10^e+7 হতে পারে। //কম্পিক্সিটি : O(N) #include <bits/stdc++.h> #define ll long long using namespace std ; int f ( int n ) { int sum = 0 ; for ( int i = 1 ; i <= n ; i ++ ){ sum = sum + i ; } return sum ; } int quary ( int fast , int last ) { return ( f ( last ) - f ( fast - 1 )); } int main () { int a , b ; cin >> a >> b ; cout << quary ( a , b ); } # একটি লাইন এ কয়টি শব্দ আছে #include <bits/stdc++.h> using namespace std ; int main () { char s [ 1005 ], word [ 1005 ]; cin . getline ( s , 1005 ); int str_len = strlen ( s ); int wordcount = 1 ; for ( int j = 0 , cnt = 0 ; j < str_len ; j ++ ) { if ( s [ j ] != ' ' ) { word [ cnt ] = s [ j ]; cnt ++ ; } if ( s [ j ] != ' ' &a

ICPC-DHAKA-2019-PRELI/PROBLEM-G

Problem link :  https://algo.codemarshal.org/contests/icpc-dhaka-19-preli/problems/G #include <bits/stdc++.h> #define ll long long #define dd long double using namespace std ; ll status [ 10000004 ]; ll prime [ 10000004 ], sum [ 10000002 ], sum2 [ 10000002 ]; ll p = 0 ; ll phi [ 10000000 ]; void sivPhi () { int x = 10000000 ; for ( int i = 1 ; i <= x ; i ++ ) phi [ i ] = i ; for ( int i = 2 ; i <= x ; i ++ ) { if ( phi [ i ] == i ) { phi [ i ] = i - 1 ; for ( int j = i * 2 ; j <= x ; j += i ) phi [ j ] = ( phi [ j ] / i ) * ( i - 1 ); } } } int main () { ios :: sync_with_stdio ( false ); cin . tie ( nullptr ); sivPhi (); ///siv(); //for(ll i=1;i<=10000000;i++){sum[i]=go1(i); //sum2[i]=sum2[i-1]+sum[i]; ///} /// cout<<"sum= "<<sum[6]<<endl; for ( ll i = 1 ; i <= 10000

Prefix_sum or Parallel Scan sum

Code :  #include <bits/stdc++.h> using namespace std; int main () {     int n;     cin >> n;     int arr[n];     for(int i=0; i<n; i++)     {         cin >> arr[i];     }     ///generate a prefix sum     int prefixsum[n];     prefixsum[0]=arr[0];         for(int i=1; i<=n; i++)     {         prefixsum[i]=prefixsum[i-1]+arr[i];     }     //output     for(int i=0; i<n; i++)     {         cout << prefixsum[i]<< " ";     }     return 0; }

STL রিলেটড কিছু প্রোগ্রাম

STL ম্যাপের মাধ্যমে সর্ট করা code: include < bits / stdc ++ . h > using namespace std ; map < int , char > mp ; int main () { for ( int i = 1 ; i < 5 ; i ++ ) { char x ; int y ; cin >> x >> y ; mp . insert ( pair < int , char > ( y , x )); } if ( ! mp . empty ()) { auto it = mp . end (); -- it ; cout << it -> second << " " << it -> first << endl ; } return 0 ; } বাইনারী সার্চ: #include <bits/stdc++.h> using namespace std ; bool compare ( string a , string b ) { return ( a . size () == b . size ()); } int main () { int input [ 100 ], n ; cin >> n ; vector < int > v ; for ( int i = 0 ; i < n ; i ++ ) { int data ; cin >> data ; v . push_back ( data ); } cout &