Saturday, 4 Dec 2021
Category: Algorithms

#include #include #include #include using namespace std;  struct nodeInfo {    int sat;     int deg;     int vertex; };struct maxSat {    bool operator()(const nodeInfo& lhs,                    const nodeInfo& rhs) const    {                                        return tie(lhs.sat, lhs.deg, lhs.vertex)               > tie(rhs.sat, rhs.deg, rhs.vertex);    }};  class Graph {          int n;          vector adj;  public:        Graph(int numNodes)    {        n = numNodes;        adj.resize(n, vector());    }    ~Graph() { adj.clear(); }          void addEdge(int u, int v);              void DSatur();};  void Graph::addEdge(int u, int v){    adj[u].push_back(v);    adj[v].push_back(u);}  void Graph::DSatur(){    int u, i;    vector used(n, false);    vector c(n), […]

#include using namespace std;  string findSum(string str1, string str2){            if (str1.length() > str2.length())        swap(str1, str2);          string str = “”;          int n1 = str1.length();    int n2 = str2.length();          reverse(str1.begin(), str1.end());    reverse(str2.begin(), str2.end());      int carry = 0;    for (int i = 0; i < n1; i++) {                          int sum            = ((str1[i] - '0')               + (str2[i] - '0')               + carry);        str.push_back(sum % 10 + '0');                  carry = sum / 10;    }          for (int i = n1; […]

import java.util.ArrayList;import java.util.Arrays;  public class Graph {    private static class Neighbour {        int destination;        int weight;          Neighbour(int destination, int weight)        {            this.destination = destination;            this.weight = weight;        }    }      private int vertices;    private final ArrayList        adjacencyList;                  public Graph(int vertices)    {        this.vertices = vertices;          adjacencyList = new ArrayList(vertices);        for (int i = 0; i < vertices; i++)            adjacencyList.add(new ArrayList());    }                  public Graph(int vertices, int[][] adjacencyMatrix)    {        this(vertices);          for (int i = 0; i < vertices; i++) {            for (int j = […]

#include using namespace std;  template   class indexed_priority_queue {          unordered_map m;          vector v;          long long numberOfElement;          Comparator comp;          long long capacity = LLONG_MAX;          long long int getValueIndex(T1 key)    {        if (m[key] == 0) {            cout

Shortest Path PropertiesThe shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized. The shortest path between any two nodes of the graph can be founded using many algorithms, such as Dijkstra’s algorithm, Bellman-Ford […]

#include using namespace std;  bool check(int K, int n, int m,           vector arr,           int good_share){    int candies = n, taken = 0;      while (candies > 0) {                                  taken += min(K, candies);        candies -= min(K, candies);                  for (int j = 0; j < m; j++) {                                        int consume = (arr[j] * candies) / 100;                                        candies -= consume;        }    }                return (taken >= good_share);}  void minimumK(vector &arr, int N,              int M){              int good_share […]

#include using namespace std;    vector generateBinaryTree(int n){                        vector options = { 0, 1, 2 };                        map mp;                queue q;            q.push(1);            vector v;                int count = 1;                mp[1] = 1;            while (!q.empty() or count < n) {                                            int front;                  if(!q.empty()) {                                                    front = q.front();                                                                q.pop();        }                                                          int numberOfChilds          = options[rand() % (options.size())];                            if (count >= n)            continue;                                        while (numberOfChilds–) {                                                                int child = rand() % n + 1;                                        while (mp[child]) {                child++;                if (child > n) {                    child = 1;                }            }                                        count++;                            mp[child] […]

#include using namespace std;typedef unsigned long long int int64;  int64 Message[80];  const int64 Constants[80]    = { 0x428a2f98d728ae22, 0x7137449123ef65cd,        0xb5c0fbcfec4d3b2f, 0xe9b5dba58189dbbc,        0x3956c25bf348b538, 0x59f111f1b605d019,        0x923f82a4af194f9b, 0xab1c5ed5da6d8118,        0xd807aa98a3030242, 0x12835b0145706fbe,        0x243185be4ee4b28c, 0x550c7dc3d5ffb4e2,        0x72be5d74f27b896f, 0x80deb1fe3b1696b1,        0x9bdc06a725c71235, 0xc19bf174cf692694,        0xe49b69c19ef14ad2, 0xefbe4786384f25e3,        0x0fc19dc68b8cd5b5, 0x240ca1cc77ac9c65,        0x2de92c6f592b0275, 0x4a7484aa6ea6e483,        0x5cb0a9dcbd41fbd4, 0x76f988da831153b5,        0x983e5152ee66dfab, 0xa831c66d2db43210,        0xb00327c898fb213f, 0xbf597fc7beef0ee4,        0xc6e00bf33da88fc2, 0xd5a79147930aa725,        0x06ca6351e003826f, 0x142929670a0e6e70,        0x27b70a8546d22ffc, 0x2e1b21385c26c926,        0x4d2c6dfc5ac42aed, 0x53380d139d95b3df,        0x650a73548baf63de, 0x766a0abb3c77b2a8,        0x81c2c92e47edaee6, 0x92722c851482353b,        0xa2bfe8a14cf10364, 0xa81a664bbc423001,        0xc24b8b70d0f89791, 0xc76c51a30654be30,        0xd192e819d6ef5218, 0xd69906245565a910,        0xf40e35855771202a, 0x106aa07032bbd1b8,        0x19a4c116b8d2d0c8, 0x1e376c085141ab53,        0x2748774cdf8eeb99, 0x34b0bcb5e19b48a8,        0x391c0cb3c5c95a63, 0x4ed8aa4ae3418acb,        0x5b9cca4f7763e373, 0x682e6ff3d6b2b8a3,        0x748f82ee5defb2fc, 0x78a5636f43172f60,        0x84c87814a1f0ab72, 0x8cc702081a6439ec,        0x90befffa23631e28, 0xa4506cebde82bde9,        0xbef9a3f7b2c67915, 0xc67178f2e372532b,        0xca273eceea26619c, 0xd186b8c721c0c207,        0xeada7dd6cde0eb1e, 0xf57d4f7fee6ed178,        0x06f067aa72176fba, 0x0a637dc5a2c898a6,        0x113f9804bef90dae, 0x1b710b35131c471b,        0x28db77f523047d84, 0x32caab7b40c72493,        0x3c9ebe0a15c9bebc, 0x431d67c49c100d4c,        0x4cc5d4becb3e42b6, 0x597f299cfc657e2a,        0x5fcb6fab3ad6faec, 0x6c44198c4a475817 };  string […]