Skip to content

Commit 5cda96f

Browse files
authored
Merge pull request #119 from ndk123-web/main
feat: Added print_all_divisions problem efficiently
2 parents f23cc9f + 69c7715 commit 5cda96f

2 files changed

Lines changed: 80 additions & 0 deletions

File tree

CPP/Basics/print_all_divisions.cpp

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
#include <bits/stdc++.h>
2+
using namespace std;
3+
4+
int main(){
5+
6+
// print all divisions
7+
int num = 36;
8+
vector <int> nums;
9+
10+
for (int i = 1 ; i <= sqrt(num); i++){
11+
if(num%i == 0){
12+
nums.emplace_back(i);
13+
if (num / i != i){ // for preventing double 6
14+
nums.emplace_back(num/i);
15+
}
16+
}
17+
}
18+
19+
sort(nums.begin(),nums.end());
20+
21+
for (auto i : nums){
22+
cout << i << " ";
23+
}
24+
25+
// 1 2 3 4 6 9 12 18 36
26+
27+
return 0;
28+
}

CPP/pattern/diamond_pattern.cpp

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
// *
2+
// ***
3+
// *****
4+
// *******
5+
//*********
6+
// *******
7+
// *****
8+
// ***
9+
// *
10+
11+
#include <iostream>
12+
13+
using namespace std;
14+
15+
int main() {
16+
17+
int r = 4;
18+
int c = 5;
19+
int space;
20+
int star;
21+
int opposite_r = r - 1;
22+
23+
for (int i = 0 ; i < r ; i++){
24+
space = r - i - 1;
25+
for (int j = 0; j < space ; j++){
26+
cout << " ";
27+
}
28+
29+
star = (2*i) + 1;
30+
for (int k = 0 ; k < star ; k++){
31+
cout << "*";
32+
}
33+
34+
cout << endl;
35+
}
36+
37+
for (int i = opposite_r - 1; i >= 0 ; i--){
38+
space = opposite_r - i;
39+
for (int j = 0 ; j < space; j++){
40+
cout << " ";
41+
}
42+
43+
star = (2*i) + 1;
44+
for(int k = 0 ; k < star ; k++){
45+
cout << "*";
46+
}
47+
48+
cout << endl;
49+
}
50+
51+
return 0;
52+
}

0 commit comments

Comments
 (0)