Snippets Collections
int f(int ind,int prev,vector<int>& nums,vector<vector<int>>& dp)
{
    if(ind<0)
    return 0;
    if(dp[ind][prev]!=-1)
    return dp[ind][prev];
    int nonpick,pick;
    nonpick = f(ind-1,prev,nums,dp);
    pick=0;
    if(nums[ind]<nums[prev])
    pick = 1+f(ind-1,ind,nums,dp);
    return dp[ind][prev] = max(pick,nonpick);
}
    int lengthOfLIS(vector<int>& nums) {
        int n = nums.size();
        int p = n-1;
        vector<vector<int>>dp(n+1,vector<int>(n+1,-1));
        nums.push_back(INT_MAX);
        return f(n-1,n,nums,dp);
        
        
        
    }
from_map = Map();
from_map.put("user_name", owner_name);
from_map.put("email", owner_email);

////
to_list = List();
for each person in email_list
{
  to_map = Map();
  to_map.put("email", person);
  to_list.add(to_map);
} 
//// CRM template id ///\
template = Map();
template.put("id", "4202165000088355038");

/// 

param = Map();
param.put("from", from_map);
param.put("to", to_list);
param.put("template", template);
param_list = List();
param_list.add(param);
// 
data = Map();
data.put("data", param_list);
info data;
sent_mail = invokeUrl
[
  url: "https://www.zohoapis.com/crm/v6/Deals/"+deal_id+"/actions/send_mail"
  type: POST
  parameters: data.toString()
  connection: "zoauth"
];
info sent_mail;
function wpdocs_js_code_example() {
	?>
	<script type="text/javascript">
		/* add your js code here */
	</script>
	<?php
}
add_action( 'wp_footer', 'wpdocs_js_code_example' );
  const transactions = [200, 450, -400, 3000, -650, -130, 70, 1300];
  function myFunc(item, date = '2nd Feb') {
    // adding in date default here but assume its from somewhere else
    
    return { amount: item, date }; // creating an object with both item and date
  }

  // forEach
  const test1 = transactions.map(item => myFunc(item, date));
  console.log(test1);
D = {num: num ** 2 for num in range(1, 11)}

print(D)
The transform-origin property is used to set the point around which a CSS transformation is applied. For example, when performing a rotate, the transform-origin determines around which point the element is rotated.

Remember that the transform property allows you to manipulate the shape of an element. In this case, using the rotate(60deg) value will rotate the element around its transform-origin point by 60 degrees clockwise.

The @keyframes at-rule is used to define the flow of a CSS animation. Within the @keyframes rule, you can create selectors for specific points in the animation sequence, such as 0% or 25%, or use from and to to define the start and end of the sequence.

@keyframes rules require a name to be assigned to them, which you use in other rules to reference. For example, the @keyframes freeCodeCamp { } rule would be named freeCodeCamp.

You now need to define how your animation should start. To do this, create a 0% rule within your @keyframes wheel rule. The properties you set in this nested selector will apply at the beginning of your animation.

As an example, this would be a 12% rule:

Example Code
@keyframes freecodecamp {
  12% {
    color: green;
  }
}

The animation-name property is used to link a @keyframes rule to a CSS selector. The value of this property should match the name of the @keyframes rule.

The animation-duration property is used to set how long the animation should sequence to complete. The time should be specified in either seconds (s) or milliseconds (ms).

The animation-iteration-count property sets how many times your animation should repeat. This can be set to a number, or to infinite to indefinitely repeat the animation. 

The animation-timing-function property sets how the animation should progress over time. 

With your .wheel selector, you created four different properties to control the animation. For your .cabin selector, you can use the animation property to set these all at once.

Set the animation property of the .cabin rule to cabins 10s linear infinite. This will set the animation-name, animation-duration, animation-timing-function, and animation-iteration-count properties in that order.

You can use the ease-in-out timing function. This setting will tell the animation to start and end at a slower pace, but move more quickly in the middle of the cycle.

You can use the skew transform function, which takes two arguments. The first being an angle to shear the x-axis by, and the second being an angle to shear the y-axis by.
dplyr #data manipulation
Tidyr #data cleaning
%>% #pipe operator in r

install.packages('dplyr')
#install.packages('nycflights13')
library(dplyr)
#dplyr functions

1. filter(df, <conditional expressions>) #select a set of rows from a data frame
#filter rows of data.frame with: (filter(), slice())

head(filter(df, month==11, day==3, carrier=='AA'))
head(flights[flights$month == 11 $ flights$day == 3, ])
head(slice(df, 1:10))

#ordering rows of a data frame

arrange(df, year,month,day, desc(arr_time))

#select the columns of the data.frame

select(df, month, day)

#rename columns

syntax: rename(df, new_col_name = old_col_name)
rename(df, airline_carrier == carrier)

#select unique values of a column

distinct(select(df, airlines))

#Add new columns to data frame with mutate() function

mutate(df, new_column = arrival_column - depart_column)

#Transmute() returns the new column back

transmute(df, new_column = arrival_column - depart_column)

#collapsing the data in a column into a single value eg mean or sum or sd

summarise(flights, new_average = mean(airtime_column, na.rm = TRUE))

#random sampling of rows

sample_n(flights, 10) #random samples 10 rows

sample_frac(flights, 0.1) #10% of the rows
#include <bits/stdc++.h>
using namespace std;

class Solution {
private:
    int timer = 1;
    void dfs(int node, int parent, vector<int> &vis,
             vector<int> adj[], int tin[], int low[], vector<vector<int>> &bridges) {
        vis[node] = 1;
        tin[node] = low[node] = timer;
        timer++;
        for (auto it : adj[node]) {
            if (it == parent) continue;
            if (vis[it] == 0) {
                dfs(it, node, vis, adj, tin, low, bridges);
                low[node] = min(low[it], low[node]);
                // node --- it
                if (low[it] > tin[node]) {
                    bridges.push_back({it, node});
                }
            }
            else {
                low[node] = min(low[node], low[it]);
            }
        }
    }
public:
    vector<vector<int>> criticalConnections(int n,
    vector<vector<int>>& connections) {
        vector<int> adj[n];
        for (auto it : connections) {
            int u = it[0], v = it[1];
            adj[u].push_back(v);
            adj[v].push_back(u);
        }
        vector<int> vis(n, 0);
        int tin[n];
        int low[n];
        vector<vector<int>> bridges;
        dfs(0, -1, vis, adj, tin, low, bridges);
        return bridges;
    }
};

int main() {

    int n = 4;
    vector<vector<int>> connections = {
        {0, 1}, {1, 2},
        {2, 0}, {1, 3}
    };

    Solution obj;
    vector<vector<int>> bridges = obj.criticalConnections(n, connections);
    for (auto it : bridges) {
        cout << "[" << it[0] << ", " << it[1] << "] ";
    }
    cout << endl;
    return 0;
}
#include <bits/stdc++.h>
using namespace std;




class Solution
{
private:
    void dfs(int node, vector<int> &vis, vector<int> adj[],
             stack<int> &st) {
        vis[node] = 1;
        for (auto it : adj[node]) {
            if (!vis[it]) {
                dfs(it, vis, adj, st);
            }
        }

        st.push(node);
    }
private:
    void dfs3(int node, vector<int> &vis, vector<int> adjT[]) {
        vis[node] = 1;
        for (auto it : adjT[node]) {
            if (!vis[it]) {
                dfs3(it, vis, adjT);
            }
        }
    }
public:
    //Function to find number of strongly connected components in the graph.
    int kosaraju(int V, vector<int> adj[])
    {
        vector<int> vis(V, 0);
        stack<int> st;
        for (int i = 0; i < V; i++) {
            if (!vis[i]) {
                dfs(i, vis, adj, st);
            }
        }

        vector<int> adjT[V];
        for (int i = 0; i < V; i++) {
            vis[i] = 0;
            for (auto it : adj[i]) {
                // i -> it
                // it -> i
                adjT[it].push_back(i);
            }
        }
        int scc = 0;
        while (!st.empty()) {
            int node = st.top();
            st.pop();
            if (!vis[node]) {
                scc++;
                dfs3(node, vis, adjT);
            }
        }
        return scc;
    }
};

int main() {

    int n = 5;
    int edges[5][2] = {
        {1, 0}, {0, 2},
        {2, 1}, {0, 3},
        {3, 4}
    };
    vector<int> adj[n];
    for (int i = 0; i < n; i++) {
        adj[edges[i][0]].push_back(edges[i][1]);
    }
    Solution obj;
    int ans = obj.kosaraju(n, adj);
    cout << "The number of strongly connected components is: " << ans << endl;
    return 0;
}
void mergeArray(int arr1[], int n, int arr2[], int m, int arr3[]) {
  int i, j, k;
  i = j = k = 0;
  while (i < n && j < m) {
    if (arr1[i] < arr2[j]) {
      arr3[k] = arr1[i];
      k++;
      i++;
    } else {
      arr3[k] = arr2[j];
      k++;
      j++;
    }
  }
  while (i < n) {
    arr3[k] = arr1[i];
    i++;
    k++;
  }
  while (j < m) {
    arr3[k] = arr2[j];
    k++;
    j++;
  }
}
.three-column {
  padding: 1em;
  -moz-column-count: 3;
  -moz-column-gap: 1em;
  -webkit-column-count: 3;
  -webkit-column-gap: 1em;
  column-count: 3;
  column-gap: 1em;
}
nav {
  float: left;
  width: 200px;
}
section {
  margin-left: 200px;
}
.relative {
  position: relative;
  width: 600px;
  height: 400px;
}
.absolute {
  position: absolute;
  top: 120px;
  right: 0;
  width: 300px;
  height: 200px;
}
void reverseArray (int arr[],int n) {
  int start = 0;
  int end = n-1;
  while (start<=end) {
    swap (arr[start],arr[end]);
      start++;
    end--;
  }
}
.fixed {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 200px;
  background-color: white;
}
task_map = Map();
task_map.put("Subject","Contact nick name is missing.");
task_map.put("Description","Please add the nickname of the selected contact for this task, so that the system can send a notification about the unchanged deal within 90 days to this contact.");
task_map.put("Deal_Priority",true);
task_map.put("Who_Id",contact_Id);
task_map.put("Due_Date",zoho.currentdate.addDay(5));
task_map.put("Priority","? Normal (THIS WEEK)");
task_map.put("What_Id",deal_Id);
task_map.put("Owner",deal_owner);
task_map.put("$se_module","Deals");
create_name_task = zoho.crm.createRecord("Tasks",task_map);
info "Creating nickname missing task = " + create_name_task;
//string s2 = reverse(s.begin(),s.end()); THIS IS WRONG
reverse(s.begin(),s.end());//THIS IS CORRECT
  .hover-img a {
        pointer-events: none;
    }

    .hover-img a:hover {
        cursor: default;
    }
.wd-entities-title a {
    pointer-events: none; /* Disable pointer events on the anchor tag */
    text-decoration: none; /* Remove underline (if present) */
    color: inherit; /* Inherit text color from parent */
}

.wd-entities-title a:hover {
    cursor: default; /* Set default cursor on hover (optional) */
}
function custom_external_add_to_cart_button($button, $product) {
    // Check if the product is of type 'external'
    if ($product->is_type('external')) {
        // Direct URL to the Amazon icon image
        $icon_url = 'https://mejormovil.es/wp-content/themes/woodmart/images/amazon-icon.png';
        // Define the button text
        $button_text = 'See Prices';

        // Create the button HTML with the Amazon icon and new text
        $button = sprintf(
            '<a href="%s" class="button product_type_external add-to-cart-loop customize-unpreviewable" data-product_id="%s" aria-label="%s" rel="nofollow">
                <img src="%s" style="width: 20px; height: auto; margin-right: 5px; vertical-align: middle;" alt="Amazon Icon"/> %s
            </a>',
            esc_url($product->add_to_cart_url()), // URL for the product
            esc_attr($product->get_id()), // Product ID
            esc_attr($product->add_to_cart_description()), // ARIA label
            esc_url($icon_url), // Amazon icon URL
            esc_html($button_text) // Button text
        );
    }
    // Return the modified button HTML
    return $button;
}
// Apply the filter to modify the external product button
add_filter('woocommerce_loop_add_to_cart_link', 'custom_external_add_to_cart_button', 10, 2);
table {
  width: 95%;
  border-collapse: collapse;
  text-align: center;
}

td, th {
  padding: 3px;
  width: 50px;
  height: 35px;
  border: 1px solid #000000;
}

table input {
  min-width: calc(100% - 2px);       /* минус 2 пикселя бордеров */
  height: calc(100% + 6px);
  margin: 0 -3px; padding: 0 0.3em;
  font: inherit;
  border: 0;
  background: transparent;
}

table input:focus {
  outline: none;
  box-shadow: inset 0 0 0 2px rgba(0,150,255, 0.3);
}
#include <iostream>
using namespace std;

void printArray (int arr[],int n) {
  for (int i= 0; i< n; i++) {
    cout << arr[i] << " ";
  }
  cout << endl;
}

void sortArray (int arr[], int n) {
  for (int i = 0; i < (n-1); i ++) {
    for (int j = (i+1); j < n; j++) {
      if (arr[i] > arr[j]) {
        swap (arr[i], arr[j]);
      }
    }
  }
}

int main () {
  int n;
  cout << "Enter the size of the array: " << endl;
  cin >> n;
  int arr[n];
  cout << "Enter the elements of the array: " << endl;
  for (int i = 0; i < n; i++) {
    cin >> arr[i];
  }
  cout << "The array before sorting: " << endl;
  printArray (arr, n);
  sortArray (arr, n);
  cout << "the array after sorting :" << endl;
  printArray(arr,n);
  return 0;
}
#include <iostream>
using namespace std;

bool allocationIsPossible(int arr[], int n, int m, int mid) {
    int sum = 0;
    int studentCount = 1;
    for (int i = 0; i < n; i++) {
        if (sum + arr[i] <= mid) {
            sum += arr[i];
        } else {
            studentCount++;
            if (studentCount > m || arr[i] > mid) {
                return false;
            }
            sum = arr[i];
        }
    }
    return true;
}

int bookAllocate(int arr[], int n, int m) {
    int start = 0;
    int sum = 0;
    for (int i = 0; i < n; i++) {
        sum += arr[i];
    }
    int end = sum;
    int mid = start + (end - start) / 2;
    int ans = -1;
    while (start <= end) {
        if (allocationIsPossible(arr, n, m, mid)) {
            ans = mid;
            end = mid - 1;
        } else {
            start = mid + 1;
        }
        mid = start + (end - start) / 2;
    }
    return ans;
}

int main() {
    int arr[4] = {10, 20, 30, 40};
    int ans = bookAllocate(arr, 4, 2);
    cout << "Minimum pages: " << ans << endl;
    return 0;
}
  

// output is 60
#include <iostream>
using namespace std;

bool allocationIsPossible(int arr[], int n, int m, int mid) {
    int sum = 0;
    int studentCount = 1;
    for (int i = 0; i < n; i++) {
        if (sum + arr[i] <= mid) {
            sum += arr[i];
        } else {
            studentCount++;
            if (studentCount > m || arr[i] > mid) {
                return false;
            }
            sum = arr[i];
        }
    }
    return true;
}

int bookAllocate(int arr[], int n, int m) {
    int start = 0;
    int sum = 0;
    for (int i = 0; i < n; i++) {
        sum += arr[i];
    }
    int end = sum;
    int mid = start + (end - start) / 2;
    int ans = -1;
    while (start <= end) {
        if (allocationIsPossible(arr, n, m, mid)) {
            ans = mid;
            end = mid - 1;
        } else {
            start = mid + 1;
        }
        mid = start + (end - start) / 2;
    }
    return ans;
}

int main() {
    int arr[4] = {10, 20, 30, 40};
    int ans = bookAllocate(arr, 4, 2);
    cout << "Minimum pages: " << ans << endl;
    return 0;
}
  

// output is 60
/**
 * @snippet       Remove Zoom, Gallery @ Single Product Page
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @testedwith    WooCommerce 5
 * @community     https://businessbloomer.com/club/
 */
  
//add_action( 'wp', 'bbloomer_remove_zoom_lightbox_theme_support', 99 );
  
function bbloomer_remove_zoom_lightbox_theme_support() { 
    //remove_theme_support( 'wc-product-gallery-zoom' );
    //remove_theme_support( 'wc-product-gallery-lightbox' );
    remove_theme_support( 'wc-product-gallery-slider' );
}

////Remove actions for single product
remove_action('woocommerce_before_main_content','woocommerce_breadcrumb',20);
remove_action('woocommerce_single_product_summary','woocommerce_template_single_meta',40);
remove_action('woocommerce_single_product_summary','woocommerce_template_single_excerpt',20);
remove_action('woocommerce_after_single_product_summary','woocommerce_output_product_data_tabs',10);
remove_action('woocommerce_after_single_product_summary','woocommerce_upsell_display',15);
remove_action('woocommerce_after_single_product_summary','woocommerce_output_related_products',20);
//Add actions for single product
add_action('woocommerce_single_product_summary','woocommerce_template_single_excerpt',35);

function addTHCForSingleProduct(){
	$thc = get_field('thc');
	if(!empty($thc)) echo '<h4 class="single-product-thc">'.$thc.'</h4>';
}
add_action('woocommerce_single_product_summary','addTHCForSingleProduct',6);
function customTabForSingleProduct(){
?>
<div class="rst-accordion-description">
	<?php if($ingredient = get_field('ingredient_field_name')):?>
	<div class="rst-item-accordion-description">
		<h3 class="rst-heading-item-accordion-description rst-heading-item-toggle">
			Ingredients
			<span>
				<img src="https://sweedies.co/wp-content/uploads/2024/05/arrows-down.png" />
			</span>
		</h3>
		<div class="rst-content-item-accordion-description">
			<?php echo $ingredient; ?>
		</div>
	</div>
	<?php endif;?>
	<?php  $lab_test_report = get_field('lab_test_report');if(!empty($lab_test_report)):?>
	<div class="rst-item-accordion-description">
		<a class="rst-heading-item-accordion-description" href="<?php echo $lab_test_report['url']; ?>" download>
			Lab test report
			<span>
				<img src="https://sweedies.co/wp-content/uploads/2024/05/PDF-Print-Icon.png" />
			</span>
		</a>
	</div>
	<?php endif;?>
</div>
<script>
	(function($){
		$('.rst-heading-item-toggle').click(function(){
			if($(this).hasClass('active')){
				$(this).parent().find('.rst-content-item-accordion-description').slideUp();
				$(this).removeClass('active');
			}else{
				$('.rst-content-item-accordion-description').slideUp();
				$(this).parent().find('.rst-content-item-accordion-description').slideDown();
				$('.rst-heading-item-toggle').removeClass('active');
				$(this).addClass('active');
			}
			return false;
		});
	})(jQuery)
</script>
<?php
}
add_action('woocommerce_single_product_summary','customTabForSingleProduct',45);

function customBestSellerForShop(){
?>
<?php 
	$args = [
		'post_type' => 'product',
		'posts_per_page' => 15,
		'meta_key' => 'total_sales',
		'orderby' => 'meta_value_num',
		'order' => 'DESC',
	];
	$the_query = new WP_Query($args);
	if($the_query->have_posts()):
?>
<div class="customBestSellerForSingleProduct" style="clear: both;">
	<div class="customBestSellerForSingleProduct-head">
		<h2 class="nt-heading">
			Best Sellers
		</h2>
	</div>
	<div class="customBestSellerForSingleProduct-list">
		<div class="slider-product custom-slider-product-bestSellers">
			<div class="swiper-wrapper">
				<?php
                while ($the_query->have_posts()):
                    $the_query->the_post();
                    $product = wc_get_product(get_the_ID());
                    $categories = wp_get_post_terms(get_the_ID(), 'product_cat');
                    $category_name = !empty($categories) ? $categories[0]->name : '';
                    $rating_count = $product->get_rating_count();
                    $average = $product->get_average_rating();
                    $regular_price = $product->get_regular_price();
                    $sale_price = $product->get_sale_price();
                    ?>

                    <div class="swiper-slide">
                        <div class="slider-product-item">
                            <a class="product-link" href="<?php the_permalink(); ?>">
                                <div class="slider-product-image">
                                    <?php echo woocommerce_get_product_thumbnail('shop_catalog'); ?>

                                    <div class="add-to-cart-btn">
                                        <?php //echo $this->get_add_to_cart_button(get_the_ID()); ?>
                                    </div>
                                </div>
                            </a>
                            <div class="slider-product-details">
                                <div class="product-category"><?php echo esc_html($category_name); ?></div>
								<a href="<?php the_permalink(); ?>">
									<h2 class="slider-product-title">
										<?php the_title(); ?>
									</h2>
								</a>
                                <div class="slider-product-description"><?php echo wp_trim_words(get_the_excerpt(), 15); ?></div>
								<div class="product-rating">
									<?php
									$rating = $average; 
									$full_stars = floor($rating);
									$half_star = ($rating - $full_stars >= 0.5) ? 1 : 0;
									$empty_stars = 5 - $full_stars - $half_star;

									
									for ($i = 0; $i < $full_stars; $i++) {
										echo '<i class="fa-solid fa-star"></i>';
									}

									
									if ($half_star) {
										echo '<i class="fa-solid fa-star-half-alt"></i>';
									}

									
									for ($i = 0; $i < $empty_stars; $i++) {
										echo '<i class="fa-regular fa-star"></i>';
									}
									?>
									<span class="rating-count">(<?php echo $rating_count; ?>)</span>
								</div>
								<div class="slider-product-prices">
                                    <?php if ($sale_price): ?>
                                        <span class="slider-product-new-price"><?php echo wc_price($sale_price); ?></span>
                                        <span class="slider-product-old-price"><?php echo wc_price($regular_price); ?></span>
                                    <?php else: ?>
                                        <span class="slider-product-new-price"><?php echo wc_price($regular_price); ?></span>
                                    <?php endif; ?>
                                </div>
                                
                            </div>
                        </div>
                    </div>

                <?php endwhile; ?>
			</div>
			<div class="swiper-pagination"></div>
		</div>
		<div class="swiper-button-prev"></div>
        <div class="swiper-button-next"></div>
	</div>
</div>
<script>
	jQuery(document).ready(function ($) {

		var swiper_bestSellers = new Swiper(".custom-slider-product-bestSellers", {
			slidesPerView: 3,
			slidesPerGroup: 1,
			centeredSlides: true,
			loop: true,
			autoplay: {
				delay: 5000,
			},
			spaceBetween: 24,
// 			pagination: {
// 				el: ".swiper-pagination",
// 				clickable: true,
// 			},
			navigation: {
				nextEl: '.swiper-button-next',
				prevEl: '.swiper-button-prev',
			},
			breakpoints: {
				1025: {
					slidesPerView: 3,
					centeredSlides: true,
				},
				768: {
					slidesPerView: 2,
					centeredSlides: true,
				},
				320: {
					slidesPerView: 1.5,
					centeredSlides: true,
				},
			}
		});


	});

	jQuery(document).ready(function($) {
		$('.slider-product .slider-product-item ').matchHeight();
	});


</script>
<?php
	endif; wp_reset_postdata();
}
add_action('woocommerce_after_single_product','customBestSellerForSingleProduct',25);

function customReviewForSingleProduct(){
?>
<div class="customReviewForSingleProduct">
	<div class="customReviewForSingleProduct-head">
		<h2 class="nt-heading">
			Customer reviews
		</h2>
	</div>
	<div class="customReviewForSingleProduct-content">
		<?php echo do_shortcode('[Woo_stamped_io type="widget"]');?>
	</div>
</div>
<?php	
}
add_action('woocommerce_after_single_product','customBestSellerForShop',30);
<div class="content">
  <h3>Classes</h3>
  <div class="toolbar">
    <div id="search-wrapper">
      <i class="search-icon fas fa-search"></i>
      <input
        type="text"
        id="search"
        placeholder="Search..."
        [(ngModel)]="searchTerm"
      />
    </div>
    <div class="content-container">
      <div class="button-container">
        <button class="addBtn" (click)="openModal()">Create Class</button>
      </div>
    </div>
  </div>

  <div class="table-responsive">
    <table class="styled-table">
      <thead>
        <tr>
          <th>Class Name</th>
          <th>Class Description</th>
          <th>Assign Teacher</th>
          <th>Action Controls</th>
        </tr>
      </thead>
      <tbody>
        <tr *ngFor="let class of filteredClasses">
          <td>{{ class.className }}</td>
          <td>{{ class.classDescription }}</td>
          <td>{{ getEmployeeName(class.employeeId) }}</td>
          <td>
            <button class="edit-btn" (click)="openEditModal(class)">
              Edit
            </button>
            <button class="delete-btn" (click)="openDeleteModal(class.classId)">
              Delete
            </button>
          </td>
        </tr>
      </tbody>
    </table>
  </div>

  <div
    id="myModal"
    class="modal"
    [style.display]="showModal ? 'block' : 'none'"
  >
    <div class="modal-content">
      <span class="close" (click)="closeModal()">&times;</span>
      <div class="modal-body">
        <h3>Add Class</h3>
        <form (submit)="addClass()">
          <div class="form-group">
            <label for="className">Class Name:</label>
            <input
              type="text"
              id="className"
              name="className"
              [(ngModel)]="model.className"
              placeholder="Enter class name"
              required
            />
            <br />
            <small class="hint" style="color: red"
              >*Please enter the name of the class.</small
            >
          </div>
          <br />
          <div class="form-group">
            <label for="classDescription">Class Description:</label>
            <input
              type="text"
              id="classDescription"
              name="classDescription"
              [(ngModel)]="model.classDescription"
              placeholder="Enter merit description"
              required
            />
            <br />
            <small class="hint" style="color: red"
              >*Please enter the name of the class.</small
            >
            <br />
          </div>
          <div class="form-group">
            <label for="assignTeacherToClass">Assign Teacher to Class:</label>
            <select
              id="assignTeacherToClass"
              [(ngModel)]="model.employeeId"
              name="assignTeacherToClass"
              required>
              <option
                *ngFor="let employee of employees"
                [value]="employee.employeeId">
                {{ employee.firstName }} {{ employee.lastName }}
              </option>
            </select>
          </div>
          <div class="form-buttons">
            <button type="submit" class="btn add-btn">Add</button>
            <button type="button" class="btn cancel-btn" (click)="closeModal()">
              Cancel
            </button>
          </div>
        </form>
      </div>
    </div>
  </div>

  <!-- Edit Modal -->
  <div
    id="classModal"
    class="modal"
    [style.display]="showEditModal ? 'block' : 'none'"
  >
    <div class="modal-content">
      <span class="close" (click)="closeEditModal()">&times;</span>
      <div class="modal-body">
        <h3>Edit Class</h3>
        <form (submit)="updateClass()">
          <div class="form-group">
            <label for="editClassName">Class Name:</label>
            <input
              type="text"
              id="editClassName"
              name="className"
              [(ngModel)]="model.className"
              placeholder="Enter class name"
              required
            />
            <br />
            <small class="hint" style="color: red"
              >*Please enter updated name of the class.</small
            >
          </div>
          <div class="form-group">
            <label for="editClassDescription">Class Description:</label>
            <input
              type="text"
              id="editClassDescription"
              name="classDescription"
              [(ngModel)]="model.classDescription"
              placeholder="Enter class description"
              required
            />
            <br />
            <small class="hint" style="color: red"
              >*Please enter updated description of the class.</small
            >
          </div>
          <div class="form-group">
            <label for="assignTeacherToClass">Assign Teacher to Class:</label>
            <select
              id="assignTeacherToClass"
              [(ngModel)]="model.employeeId"
              name="assignTeacherToClass"
              required
            >
              <option
                *ngFor="let employee of employees"
                [value]="employee.employeeId"
              >
                {{ employee.firstName }} {{ employee.lastName }}
              </option>
            </select>
          </div>
          <div class="form-buttons">
            <button type="submit" class="btn add-btn">Update</button>
            <button
              type="button"
              class="btn cancel-btn"
              (click)="closeEditModal()"
            >
              Cancel
            </button>
          </div>
        </form>
      </div>
    </div>
  </div>

  <!-- delete Modal -->
  <div
    id="deleteModal"
    class="modal"
    [style.display]="showDeleteModal ? 'block' : 'none'"
  >
    <div class="modal-content">
      <span class="close" (click)="closeDeleteModal()">&times;</span>
      <h3>Delete Class</h3>
      <p>Are you sure you want to delete this class.</p>
      <div class="form-buttons">
        <button class="btn add-btn" (click)="DeleteClass(currentClassId)">
          OK
        </button>
        <button
          type="button"
          class="btn cancel-btn"
          (click)="closeDeleteModal()"
        >
          Cancel
        </button>
      </div>
    </div>
  </div>

  <!-- Success Modal -->
  <div
    id="successModal"
    class="modal"
    [style.display]="showSuccessModal ? 'block' : 'none'"
  >
    <div class="modal-content">
      <span class="close" (click)="closeSuccessModal()">&times;</span>
      <h3>Success!</h3>
      <p>Your class has been successfully created.</p>
      <div class="form-buttons">
        <button class="btn add-btn" (click)="closeSuccessModal()">OK</button>
      </div>
    </div>
  </div>

  <!-- Error Modal -->
  <div
    id="errorModal"
    class="modal"
    [style.display]="showErrorModal ? 'block' : 'none'"
  >
    <div class="modal-content">
      <span class="close" (click)="closeErrorModal()">&times;</span>
      <h3>Error!</h3>
      <p>There was a problem creating your class. Please try again.</p>
      <button class="ok-btn" (click)="closeErrorModal()">OK</button>
    </div>
  </div>
</div>
The loading attribute on an img element can be set to lazy to tell the browser not to fetch the image resource until it is needed (as in, when the user scrolls the image into view). As an additional benefit, lazy loaded elements will not load until the non-lazy elements are loaded - this means users with slow internet connections can view the content of your page without having to wait for the images to load.

The Referer HTTP header contains information about the address or URL of a page that a user might be visiting from. This information can be used in analytics to track how many users from your page visit freecodecamp.org, for example. Setting the rel attribute to noreferrer omits this information from the HTTP request.

CSS Grid offers a two-dimensional grid-based layout, allowing you to center items horizontally and vertically while still retaining control to do things like overlap elements.

CSS Grid is similar to Flexbox in that it has a special property for both the parent and child elements.

Use the minmax function to make your columns responsive on any device. The minmax function takes two arguments, the first being the minimum value and the second being the maximum. These values could be a length, percentage, fr, or even a keyword like max-content.

To add space between rows in the grid layout, you can use the row-gap property.

grid-template-columns sets the overall layout in the main rule, but you can adjust the placement in the child rules.

One option is the grid-column property, which is shorthand for grid-column-start and grid-column-end. The grid-column property tells the grid item which grid line to start and end at.

The CSS repeat() function is used to repeat a value, rather than writing it out manually, and is helpful for grid layouts. For example, setting the grid-template-columns property to repeat(20, 200px) would create 20 columns each 200px wide.

Remember that the grid-column property determines which columns an element starts and ends at. There may be times where you are unsure of how many columns your grid will have, but you want an element to stop at the last column. To do this, you can use -1 for the end column.

The object-fit property tells the browser how to position the element within its container. In this case, cover will set the image to fill the container, cropping as needed to avoid changing the aspect ratio.

The default settings for CSS Grid will create additional rows as needed, unlike Flexbox.

As an alternative, you can use the grid-auto-flow property.

This property takes either row or column as the first value, with an optional second value of dense. grid-auto-flow uses an auto-placement algorithm to adjust the grid layout. Setting it to column will tell the algorithm to create new columns for content as needed. The dense value allows the algorithm to backtrack and fill holes in the grid with smaller items, which can result in items appearing out of order.

The algorithm defaults the new column width to be auto, which may not match your current columns.

You can override this with the grid-auto-columns property.

Much like Flexbox, with CSS Grid you can align the content of grid items with align-items and justify-items. align-items will align child elements along the column axis, and justify-items will align child elements along the row axis.

You can create columns within an element without using Grid by using the column-width property.

The ::first-letter pseudo-selector allows you to target the first letter in the text content of an element.

The gap property is a shorthand way to set the value of column-gap and row-gap at the same time. If given one value, it sets the column-gap and row-gap both to that value. If given two values, it sets the row-gap to the first value and the column-gap to the second.

The place-items property can be used to set the align-items and justify-items values at the same time. The place-items property takes one or two values. If one value is provided, it is used for both the align-items and justify-items properties. If two values are provided, the first value is used for the align-items property and the second value is used for the justify-items property.
Container(
  height: 20,
  width: 100,
  child: TextFormField(
    maxLines: 1,
    decoration: InputDecoration(
      isDense: true,
      contentPadding: EdgeInsets.fromLTRB(5.0, 1.0, 5.0, 1.0),
    ),
    onChanged: (value) {
      print(value);
    },
  ),
);
global proc helloRandom2()
{
	string $nameList[] = {"Kelly","Sam","Chiharu","Liam","May","Jeremy"};
	int $namePicker = rand(5.99999);
	int $num = rand(10,60);
	string $itemList[] = {"cats","dogs","fish","guinea pigs","frogs","donkeys","bottles of lotion","sheep","snakes","jar of pickles"};
	int $itemPicker = rand(9.999999);

	print ("Hello "+$nameList[$namePicker]+"!\n");
	print ("You have "+$num+" "+$itemList[$itemPicker]+".\n");
	print ("That's too many "+$itemList[$itemPicker]+".");
}
global proc helloRandom()
{
	string $nameList[] = {"Kelly","Sam","Chiharu","Liam","May","Jeremy"};
	int $num = rand(10,60);
	int $namePicker = rand(5.99999);

	print ("Hello "+$nameList[$namePicker]+"!\n");
	print ("You have "+$num+" cats.\n");
	print "That's too many cats.";
}
global proc helloInput(string $name,int $num)
{
	print ("Hello "+$name+"!\n");
	print ("You have "+$num+" cats.\n");
}
from functools import lru_cache, partial
import timeit

@lru_cache(maxsize = 128)
def fibonacci(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    return fibonacci(n - 1) + fibonacci(n - 2)

#the first time
execution_time = timeit.Timer(partial(fibonacci, 50)).timeit(1)
print(execution_time)

#the second time
execution_time = timeit.Timer(partial(fibonacci, 50 )).timeit(1)
print(execution_time)
#include <iostream>
#include <vector>
#include <algorithm>

class DisjointSet {
public:
    DisjointSet(int n) {
        rank.resize(n + 1, 0);
        parent.resize(n + 1);
        size.resize(n + 1, 1);
        for (int i = 0; i <= n; ++i) {
            parent[i] = i;
        }
    }

    int find_upar(int node) {
        if (node == parent[node]) {
            return node;
        }
        return parent[node] = find_upar(parent[node]);
    }

    void union_by_rank(int u, int v) {
        int ulp_u = find_upar(u);
        int ulp_v = find_upar(v);
        if (ulp_u == ulp_v) {
            return;
        }
        if (rank[ulp_u] < rank[ulp_v]) {
            parent[ulp_u] = ulp_v;
        } else if (rank[ulp_v] < rank[ulp_u]) {
            parent[ulp_v] = ulp_u;
        } else {
            parent[ulp_v] = ulp_u;
            rank[ulp_u]++;
        }
    }

    void union_by_size(int u, int v) {
        int ulp_u = find_upar(u);
        int ulp_v = find_upar(v);
        if (ulp_u == ulp_v) {
            return;
        }
        if (size[ulp_u] < size[ulp_v]) {
            parent[ulp_u] = ulp_v;
            size[ulp_v] += size[ulp_u];
        } else {
            parent[ulp_v] = ulp_u;
            size[ulp_u] += size[ulp_v];
        }
    }

private:
    std::vector<int> rank;
    std::vector<int> parent;
    std::vector<int> size;
};

class Solution {
public:
    int spanningTree(int V, std::vector<std::vector<std::pair<int, int>>>& adj) {
        std::vector<std::tuple<int, int, int>> edges;
        for (int i = 0; i < V; ++i) {
            for (auto& it : adj[i]) {
                int adjNode = it.first;
                int wt = it.second;
                int node = i;
                edges.push_back(std::make_tuple(wt, node, adjNode));
            }
        }

        DisjointSet ds(V);
        std::sort(edges.begin(), edges.end());

        int mstWt = 0;
        for (auto& edge : edges) {
            int wt = std::get<0>(edge);
            int u = std::get<1>(edge);
            int v = std::get<2>(edge);
            if (ds.find_upar(u) != ds.find_upar(v)) {
                mstWt += wt;
                ds.union_by_size(u, v);
            }
        }

        return mstWt;
    }
};

int main() {
    int V = 5;
    std::vector<std::vector<std::pair<int, int>>> adj(V);

    std::vector<std::vector<int>> edges = {
        {0, 1, 2}, {0, 2, 1}, {1, 2, 1}, {2, 3, 2}, {3, 4, 1}, {4, 2, 2}
    };

    for (auto& it : edges) {
        int u = it[0], v = it[1], wt = it[2];
        adj[u].emplace_back(v, wt);
        adj[v].emplace_back(u, wt);
    }

    Solution obj;
    int mstWt = obj.spanningTree(V, adj);
    std::cout << "The sum of all the edge weights: " << mstWt << std::endl;

    return 0;
}
myData = [
    {'a': 1},
    {'a': 1},
    {'b': 1},
    {'b': 1},
    {'c': 1},
    {'c': 1},
]

# Use a set to track seen tuples of items (key-value pairs as tuples)
seen = set()
unique_data = []

for d in myData:
    # Convert each dictionary to a tuple of its items, then convert to frozenset
    # to make it hashable and suitable for use in a set
    dict_items = frozenset(d.items())
    
    # Check if the frozenset of items is already in the set
    if dict_items not in seen:
        # If not seen, add to both set and result list
        seen.add(dict_items)
        unique_data.append(d)

print(unique_data)
#include <iostream>
#include <vector>

class DisjointSet {
public:
    DisjointSet(int n) {
        rank.resize(n + 1, 0);
        parent.resize(n + 1);
        size.resize(n + 1, 1);
        for (int i = 0; i <= n; ++i) {
            parent[i] = i;
        }
    }

    int find_upar(int node) {
        if (node == parent[node]) {
            return node;
        }
        return parent[node] = find_upar(parent[node]);
    }

    void union_by_rank(int u, int v) {
        int ulp_u = find_upar(u);
        int ulp_v = find_upar(v);
        if (ulp_u == ulp_v) {
            return;
        }
        if (rank[ulp_u] < rank[ulp_v]) {
            parent[ulp_u] = ulp_v;
        } else if (rank[ulp_v] < rank[ulp_u]) {
            parent[ulp_v] = ulp_u;
        } else {
            parent[ulp_v] = ulp_u;
            rank[ulp_u]++;
        }
    }

    void union_by_size(int u, int v) {
        int ulp_u = find_upar(u);
        int ulp_v = find_upar(v);
        if (ulp_u == ulp_v) {
            return;
        }
        if (size[ulp_u] < size[ulp_v]) {
            parent[ulp_u] = ulp_v;
            size[ulp_v] += size[ulp_u];
        } else {
            parent[ulp_v] = ulp_u;
            size[ulp_u] += size[ulp_v];
        }
    }

private:
    std::vector<int> rank;
    std::vector<int> parent;
    std::vector<int> size;
};

class Solution {
public:
    int Solve(int n, std::vector<std::vector<int>>& edge) {
        DisjointSet ds(n);
        int cnt_extras = 0;
        for (auto& e : edge) {
            int u = e[0];
            int v = e[1];
            if (ds.find_upar(u) == ds.find_upar(v)) {
                cnt_extras++;
            } else {
                ds.union_by_size(u, v);
            }
        }
        int cnt_c = 0;
        for (int i = 0; i < n; ++i) {
            if (ds.find_upar(i) == i) {
                cnt_c++;
            }
        }
        int ans = cnt_c - 1;
        if (cnt_extras >= ans) {
            return ans;
        }
        return -1;
    }
};

int main() {
    int V = 9;
    std::vector<std::vector<int>> edge = { {0, 1}, {0, 2}, {0, 3}, {1, 2}, {2, 3}, {4, 5}, {5, 6}, {7, 8} };

    Solution obj;
    int ans = obj.Solve(V, edge);
    std::cout << "The number of operations needed: " << ans << std::endl;

    return 0;
}
class Solution
{
	public:
	//Function to find sum of weights of edges of the Minimum Spanning Tree.
    int spanningTree(int V, vector<vector<int>> adj[])
    {
        // code here
        vector<int> vis(V,0);
        vector<tuple<int,int,int>> mst;
        //wt,node,parent
        priority_queue<vector<int>,vector<vector<int>>, greater<vector<int>>> pq;
        
        pq.push({0,0,-1});
        int sum =0;
        
        while(!pq.empty()){
            auto it = pq.top();
            pq.pop();
            int node = it[1];
            int wt = it[0];
            int par = it[2];
            
            if(vis[node]==1) continue;
            vis[node]=1;
            sum+=wt;
            if(par!=-1){
                mst.push_back(make_tuple(wt,par,node));
            }
            for(auto it: adj[node]){
                int ch = it[0];
                int ch_w = it[1];
                if(!vis[ch]){
                    pq.push({ch_w, ch,node});
                }
            }
        }
        for(auto it: mst){
            int weight, u, v;
            tie(weight, u, v) = it;
            cout<<weight<<":"<<u<<"->"<<v<<endl;
        }
        return sum;
    }
};
class Solution {
  public:
    /*  Function to implement Bellman Ford
    *   edges: vector of vectors which represents the graph
    *   S: source vertex to start traversing graph with
    *   V: number of vertices
    */
    vector<int> bellman_ford(int V, vector<vector<int>>& edges, int S) {
        // Code here
        //iterate through edges ond keep on updating the distance array. Iterate through all the edges for 
        //V-1 times
        vector<int> dis(V,1e8);
        dis[S]=0;
        for(int i=0;i<V-1;i++){
            
            for(int j =0;j<edges.size();j++){
                int u = edges[j][0];
                int v = edges[j][1];
                int w = edges[j][2];
                if(dis[u] != 1e8 && dis[u]+w<dis[v]){
                    dis[v]=dis[u]+w;
                }
            }
        }
        for(int i=0;i<1;i++){
            
            for(int j =0;j<edges.size();j++){
                int u = edges[j][0];
                int v = edges[j][1];
                int w = edges[j][2];
                if(dis[u] != 1e8 && dis[u]+w<dis[v]){
                    return {-1};
                }
            }
        }
        
        return dis;
    }
};
# Two Years Ago
![[<% moment(tp.date.now("YYYY-MM-DD")).subtract(2, 'years').format("YYYY-MM-DD") %> ]]

# One Year Ago
![[<% moment(tp.date.now("YYYY-MM-DD")).subtract(1, 'years').format("YYYY-MM-DD") %>]]
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:first/Login/login2.dart';
import 'package:first/Login/component/api_service.dart';

String SendPhone = "";
String OTP1 = "";
String userStatus2 = "";

class Login extends StatefulWidget {
  const Login({Key? key}) : super(key: key);

  @override
  State<Login> createState() => _LoginState();
}

class _LoginState extends State<Login> {
  final TextInputFormatter phoneNumberFormatter =
      FilteringTextInputFormatter.allow(
    RegExp(r'^\d{0,11}'),
  );

  final _formKey = GlobalKey<FormState>();
  final TextEditingController _nameController = TextEditingController();
  final TextEditingController _phoneController = TextEditingController();

  void _submitForm() async {
    if (_formKey.currentState!.validate()) {
      var name = _nameController.text;
      var phone = _phoneController.text;

      var jsonResponse = await ApiService.login(name, phone);
      if (jsonResponse != null) {
        var userStatus = jsonResponse['USER STATUS'];
        var otp = jsonResponse['otp'];
        OTP1 = otp;
        userStatus2 = userStatus;
        SendPhone = phone;
        print("otp");
        print(otp);
        if (userStatus == '0' || userStatus == '1') {
          Navigator.push(
            context,
            MaterialPageRoute(builder: (context) => Login2()),
          );
        } else {
          print('Unknown user status: $userStatus');
        }
      }
    }
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: SingleChildScrollView(
          padding: const EdgeInsets.all(35.0),
          child: Form(
            key: _formKey,
            child: Column(
              mainAxisAlignment: MainAxisAlignment.center,
              crossAxisAlignment: CrossAxisAlignment.stretch,
              children: <Widget>[
                const Text(
                  'لطفا جهت ورود به برنامه، شماره تلفن خود را وارد نمایید',
                  textAlign: TextAlign.right,
                  style: TextStyle(
                    fontSize: 16,
                    fontWeight: FontWeight.bold,
                    color: Colors.black87,
                  ),
                ),
                const SizedBox(height: 20),
                const SizedBox(height: 20),
                Directionality(
                  textDirection: TextDirection.rtl,
                  child: TextFormField(
                    controller: _phoneController,
                    textAlign: TextAlign.end,
                    decoration: const InputDecoration(
                      labelText: 'شماره تلفن',
                      border: OutlineInputBorder(),
                      focusedBorder: OutlineInputBorder(
                        borderSide: BorderSide(color: Colors.blue, width: 2.0),
                      ),
                    ),
                    keyboardType: TextInputType.number,
                    inputFormatters: <TextInputFormatter>[
                      FilteringTextInputFormatter.digitsOnly,
                      phoneNumberFormatter,
                    ],
                    validator: (value) {
                      if (value == null || value.isEmpty) {
                        return 'لطفا شماره تلفن خود را وارد کنید';
                      } else if (!RegExp(r'^09\d{9}$').hasMatch(value)) {
                        return 'شماره تلفن باید با 09 شروع شود و 11 رقم باشد';
                      }
                      return null;
                    },
                  ),
                ),
                const SizedBox(height: 20),
                ElevatedButton(
                  onPressed: _submitForm,
                  style: ElevatedButton.styleFrom(
                    backgroundColor: Colors.blue,
                    padding: const EdgeInsets.symmetric(vertical: 16.0),
                    shape: RoundedRectangleBorder(
                      borderRadius: BorderRadius.circular(8.0),
                    ),
                    textStyle: const TextStyle(
                      fontSize: 18,
                      color: Colors.white,
                    ),
                  ),
                  child: const Text('ادامه'),
                ),
                const SizedBox(height: 20),
                const Text(
                  'با ورود و استفاده از برنامه، شما با شرایط و قوانین موافقت می‌نمایید.',
                  textAlign: TextAlign.end,
                  style: TextStyle(fontSize: 12, color: Colors.grey),
                ),
              ],
            ),
          ),
        ),
      ),
    );
  }
}

class MainPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Main Page'),
      ),
      body: const Center(
        child: Text('Welcome to Main Page'),
      ),
    );
  }
}
int f(int ind,int buy, vector<int>& nums ,vector<vector<int>>& dp )
{
    if(ind==(nums.size()))
    return 0;
    if(dp[ind][buy]!=-1)
    return dp[ind][buy];
    int profit;
    if(buy)
    profit = max((-nums[ind]+f(ind+1,0,nums,dp)),(f(ind+1,1,nums,dp)));
    else
    profit = max((nums[ind]+f(ind+2,1,nums,dp)),(f(ind+1,0,nums,dp)));
    return dp[ind][buy]=profit;
}
    int maxProfit(vector<int>& prices) {
        int n = prices.size();
         vector<vector<int>> dp(n,vector<int>(2,-1));
         return f(0,1,prices,dp);
        
    }
star

Tue Jun 25 2024 13:45:33 GMT+0000 (Coordinated Universal Time)

@ayushg103 #c++

star

Tue Jun 25 2024 13:03:06 GMT+0000 (Coordinated Universal Time)

@RehmatAli2024 #deluge

star

Tue Jun 25 2024 07:28:22 GMT+0000 (Coordinated Universal Time)

@hamzahanif192

star

Tue Jun 25 2024 07:06:31 GMT+0000 (Coordinated Universal Time) https://myassignmenthelp.com/solidworks-assignment-help.html

@Ameliasandres #education #assignmenthelp

star

Tue Jun 25 2024 02:55:56 GMT+0000 (Coordinated Universal Time) https://www.pynerds.com/understand-dictionary-comprehension-in-python/

@pynerds #python

star

Tue Jun 25 2024 00:16:46 GMT+0000 (Coordinated Universal Time) https://jwcooney.com/2014/01/04/itextsharp-pdfpcell-text-alignment-example/

@javicinhio

star

Mon Jun 24 2024 22:47:22 GMT+0000 (Coordinated Universal Time)

@NoFox420 #css

star

Mon Jun 24 2024 22:11:24 GMT+0000 (Coordinated Universal Time)

@davidmchale #if #shorthand

star

Mon Jun 24 2024 21:13:04 GMT+0000 (Coordinated Universal Time) https://rdrr.io/snippets/

@jkirangw

star

Mon Jun 24 2024 21:08:52 GMT+0000 (Coordinated Universal Time) https://rdrr.io/snippets/

@jkirangw

star

Mon Jun 24 2024 19:05:39 GMT+0000 (Coordinated Universal Time) https://takeuforward.org/graph/bridges-in-graph-using-tarjans-algorithm-of-time-in-and-low-time-g-55/

@Dragon14641

star

Mon Jun 24 2024 18:47:17 GMT+0000 (Coordinated Universal Time)

@utp #c++

star

Mon Jun 24 2024 18:06:02 GMT+0000 (Coordinated Universal Time) https://www.youtube.com/watch?v=MPvr-LmaZmA&list=PLDzeHZWIZsTryvtXdMr6rPh4IDexB5NIA&index=21

@vishnu_jha #c++ #dsa #array

star

Mon Jun 24 2024 17:39:07 GMT+0000 (Coordinated Universal Time) https://learnlayout.com/column

@WebDevSylvester

star

Mon Jun 24 2024 17:22:46 GMT+0000 (Coordinated Universal Time) https://learnlayout.com/float-layout

@WebDevSylvester

star

Mon Jun 24 2024 17:20:19 GMT+0000 (Coordinated Universal Time) https://learnlayout.com/clearfix

@WebDevSylvester

star

Mon Jun 24 2024 17:15:46 GMT+0000 (Coordinated Universal Time) https://learnlayout.com/position

@WebDevSylvester

star

Mon Jun 24 2024 17:15:07 GMT+0000 (Coordinated Universal Time)

@vishnu_jha #c++ #dsa #array

star

Mon Jun 24 2024 17:13:01 GMT+0000 (Coordinated Universal Time) https://learnlayout.com/position

@WebDevSylvester

star

Mon Jun 24 2024 13:31:10 GMT+0000 (Coordinated Universal Time)

@RehmatAli2024 #deluge

star

Mon Jun 24 2024 13:03:15 GMT+0000 (Coordinated Universal Time)

@ayushg103 #c++

star

Mon Jun 24 2024 12:32:48 GMT+0000 (Coordinated Universal Time)

@Promakers2611

star

Mon Jun 24 2024 12:32:25 GMT+0000 (Coordinated Universal Time)

@Promakers2611

star

Mon Jun 24 2024 12:24:57 GMT+0000 (Coordinated Universal Time)

@Promakers2611 #php

star

Mon Jun 24 2024 11:57:40 GMT+0000 (Coordinated Universal Time) https://www.transgenie.io/food-delivery-app-development

@transgenie #food #delivery #appdevelopment

star

Mon Jun 24 2024 11:28:14 GMT+0000 (Coordinated Universal Time) /checkout/?add-to-cart=9057

@odesign

star

Mon Jun 24 2024 10:42:29 GMT+0000 (Coordinated Universal Time) https://ru.stackoverflow.com/questions/1309185/форма-внутри-таблицы-form-table-html-css

@super #css

star

Mon Jun 24 2024 10:32:33 GMT+0000 (Coordinated Universal Time) https://www.youtube.com/watch?v=UdO2NeHB46c

@vishnu_jha #c++ #dsa #binarysearch

star

Mon Jun 24 2024 10:05:05 GMT+0000 (Coordinated Universal Time) https://www.youtube.com/watch?v=6z2HK4o8qcU&list=PLDzeHZWIZsTryvtXdMr6rPh4IDexB5NIA&index=14

@vishnu_jha #c++ #dsa #binarysearch

star

Mon Jun 24 2024 10:05:04 GMT+0000 (Coordinated Universal Time) https://www.youtube.com/watch?v=6z2HK4o8qcU&list=PLDzeHZWIZsTryvtXdMr6rPh4IDexB5NIA&index=14

@vishnu_jha #c++ #dsa #binarysearch

star

Mon Jun 24 2024 09:04:49 GMT+0000 (Coordinated Universal Time) Sweedies.co

@quanganh141220 #php #single #product

star

Mon Jun 24 2024 08:58:43 GMT+0000 (Coordinated Universal Time)

@Ayesha452

star

Mon Jun 24 2024 07:19:54 GMT+0000 (Coordinated Universal Time) https://www.cdek.ru/ru/tracking/

@Worktruck

star

Mon Jun 24 2024 05:52:07 GMT+0000 (Coordinated Universal Time)

@NoFox420 #css

star

Mon Jun 24 2024 05:25:36 GMT+0000 (Coordinated Universal Time) https://stackoverflow.com/questions/59536041/flutter-when-text-is-bigger-than-input-text-disappears

@vaxate #dart

star

Mon Jun 24 2024 03:38:13 GMT+0000 (Coordinated Universal Time)

@nouhad #mel

star

Mon Jun 24 2024 03:36:50 GMT+0000 (Coordinated Universal Time)

@nouhad #mel

star

Mon Jun 24 2024 03:34:20 GMT+0000 (Coordinated Universal Time)

@nouhad #mel

star

Mon Jun 24 2024 01:07:06 GMT+0000 (Coordinated Universal Time) https://www.pynerds.com/how-to-cache-function-results-in-python/

@pynerds #python

star

Sun Jun 23 2024 21:33:45 GMT+0000 (Coordinated Universal Time) https://rdrr.io/snippets/

@jkirangw

star

Sun Jun 23 2024 21:32:16 GMT+0000 (Coordinated Universal Time) https://rdrr.io/snippets/

@jkirangw

star

Sun Jun 23 2024 19:01:32 GMT+0000 (Coordinated Universal Time)

@utp #c++

star

Sun Jun 23 2024 18:01:25 GMT+0000 (Coordinated Universal Time)

@utp #c++

star

Sun Jun 23 2024 17:53:51 GMT+0000 (Coordinated Universal Time)

@utp #c++

star

Sun Jun 23 2024 17:53:06 GMT+0000 (Coordinated Universal Time)

@utp #c++

star

Sun Jun 23 2024 15:08:51 GMT+0000 (Coordinated Universal Time) https://www.reddit.com/r/ObsidianMD/comments/1bthjlp/what_plugins_could_i_use_to_organize_a_fiveyear/

@Enrico

star

Sun Jun 23 2024 14:39:26 GMT+0000 (Coordinated Universal Time)

@mehran

star

Sun Jun 23 2024 14:10:43 GMT+0000 (Coordinated Universal Time)

@ayushg103 #c++

Save snippets that work with our extensions

Available in the Chrome Web Store Get Firefox Add-on Get VS Code extension