File tree Expand file tree Collapse file tree 2 files changed +74
-0
lines changed
Mathematics/Check Wagstaff Prime/CPP
Other Algorithms/Check Wagstaff Prime Expand file tree Collapse file tree 2 files changed +74
-0
lines changed Original file line number Diff line number Diff line change
1
+
2
+ #include < bits/stdc++.h>
3
+ using namespace std ;
4
+
5
+ bool isPrime (int n)
6
+ {
7
+ if (n <= 1 )
8
+ return false ;
9
+ if (n <= 3 )
10
+ return true ;
11
+ if (n % 2 == 0 || n % 3 == 0 )
12
+ return false ;
13
+
14
+ for (int i = 5 ; i * i <= n; i = i + 6 ) {
15
+ if (n % i == 0 || n % (i + 2 ) == 0 ) {
16
+ return false ;
17
+ }
18
+ }
19
+
20
+ return true ;
21
+ }
22
+ bool isPowerOfTwo (int n)
23
+ {
24
+ return (n && !(n & (n - 1 )));
25
+ }
26
+ int main ()
27
+ {
28
+ int n = 43 ;
29
+ if (isPrime (n) && (isPowerOfTwo (n * 3 - 1 ))) {
30
+ cout << " YES\n " ;
31
+ }
32
+ else {
33
+ cout << " NO\n " ;
34
+ }
35
+
36
+ return 0 ;
37
+ }
Original file line number Diff line number Diff line change
1
+
2
+ #include < bits/stdc++.h>
3
+ using namespace std ;
4
+
5
+ bool isPrime (int n)
6
+ {
7
+ if (n <= 1 )
8
+ return false ;
9
+ if (n <= 3 )
10
+ return true ;
11
+ if (n % 2 == 0 || n % 3 == 0 )
12
+ return false ;
13
+
14
+ for (int i = 5 ; i * i <= n; i = i + 6 ) {
15
+ if (n % i == 0 || n % (i + 2 ) == 0 ) {
16
+ return false ;
17
+ }
18
+ }
19
+
20
+ return true ;
21
+ }
22
+ bool isPowerOfTwo (int n)
23
+ {
24
+ return (n && !(n & (n - 1 )));
25
+ }
26
+ int main ()
27
+ {
28
+ int n = 43 ;
29
+ if (isPrime (n) && (isPowerOfTwo (n * 3 - 1 ))) {
30
+ cout << " YES\n " ;
31
+ }
32
+ else {
33
+ cout << " NO\n " ;
34
+ }
35
+
36
+ return 0 ;
37
+ }
You can’t perform that action at this time.
0 commit comments