Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Dec 1, 2021. It is now read-only.

Commit fafb7ea

Browse files
Merge pull request #170 from tlseabra/master
added 14 new solutions
2 parents fd65813 + a888617 commit fafb7ea

File tree

15 files changed

+268
-1
lines changed

15 files changed

+268
-1
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# tlseabra@github
2+
3+
def left_in_bag(input):
4+
all_tiles = {'A':9, 'B':2, 'C':2, 'D':4, 'E':12, 'F':2, 'G':3, 'H':2, '_':2,
5+
'I':9, 'J':1, 'K':1, 'L':4, 'M':2, 'N':6, 'O':8, 'P':2, 'Q':1,
6+
'R':6, 'S':4, 'T':6, 'U':4, 'V':2, 'W':2, 'X':1, 'Y':2, 'Z':1}
7+
8+
for char in input:
9+
all_tiles[char] -= 1
10+
if all_tiles[char] < 0:
11+
print("Invalid input. More " + char + "'s have been taken from the bag than possible.")
12+
return
13+
14+
out = {}
15+
for letter in all_tiles.keys():
16+
count = all_tiles[letter]
17+
if not(count in out.keys()):
18+
out[count] = [letter]
19+
else:
20+
out[count].append(letter)
21+
22+
for key in out:
23+
out[key].sort()
24+
out[key] = ', '.join(out[key])
25+
26+
for i in range(max(out.keys()), -1, -1):
27+
if not(i in out.keys()):
28+
continue
29+
print('{}: {}'.format(i, out[i]))
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# tlseabra@github
2+
3+
def shit_post(word, width, height):
4+
ln = len(word)-1
5+
spaced = ' '.join(list(word))
6+
data = ['']*(ln*height+1)
7+
for h in range(ln*height+1):
8+
for w in range(width):
9+
start = 1 if w>0 else 0
10+
if h%ln == 0:
11+
data[h] += spaced[start:] if int(h/ln+w)%2==0 else spaced[::-1][start:]
12+
else:
13+
index = h%ln if int(h/ln)%2==0 else ln - h%ln
14+
middle = word[index] + ' '*(ln*2-1) + word[::-1][index]
15+
data[h] += middle[start:] if w%2==0 else middle[::-1][start:]
16+
for l in data:
17+
print(l)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# tlseabra@github
2+
3+
def reverse_factorial(n, f=2):
4+
if n == 1:
5+
return str(f-1) + "!"
6+
elif n%f != 0:
7+
return "NONE"
8+
return reverse_factorial(n/f, f+1)
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
/* tlseabra@github */
2+
3+
#include <stdio.h>
4+
#include <stdlib.h>
5+
6+
#define KAPREKAR_CONST 6174
7+
8+
int _pow(int base, int exp){
9+
return exp == 0 ? 1 : base * _pow(base, exp - 1);
10+
}
11+
12+
char largest_digit(short num, char *index){
13+
char max = 0;
14+
for(char i = 0; i < 4; i++){
15+
if(num%10 > max){
16+
max = num%10;
17+
if(index) *index = i;
18+
}
19+
num /= 10;
20+
}
21+
return max;
22+
}
23+
24+
short desc_digits(short num){
25+
int out[4];
26+
for(char i = 0, p; i < 4; i++){
27+
out[i] = largest_digit(num, &p);
28+
num -= (out[i]) * _pow(10, p);
29+
}
30+
return out[0]*1000 + out[1]*100 + out[2]*10 + out[3];
31+
}
32+
33+
short asc_digits(short num){
34+
short out[4];
35+
for(char i = 3, p; i >= 0; i--){
36+
out[i] = largest_digit(num, &p);
37+
num -= (out[i]) * _pow(10, p);
38+
}
39+
return out[0]*1000 + out[1]*100 + out[2]*10 + out[3];
40+
}
41+
42+
char kaprekar(short num){
43+
if(num == KAPREKAR_CONST) return 0;
44+
short big = desc_digits(num);
45+
short small = asc_digits(big);
46+
char count = 1;
47+
while(big - small != KAPREKAR_CONST){
48+
big = desc_digits(big - small);
49+
small = asc_digits(big);
50+
count++;
51+
}
52+
return count;
53+
}
54+
55+
int main(int argc, char *argv[]){
56+
short num = (short) strtol(argv[1], NULL, 10);
57+
printf("largest_digit(%d) -> %d\n", num, largest_digit(num, NULL));
58+
printf("desc_digits(%d) -> %d\n", num, desc_digits(num));
59+
printf("kaprekar(%d) -> %d\n", num, kaprekar(num));
60+
}

‎Easy Challenges/Challenge 0039 Easy/solutions/solution.R

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# tlseabra @github
22

3-
43
fizzbuzz <- function(n){
54
for(i in 1:n){
65
a <- if(i%%3 == 0 && i%%5 == 0){
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# tlseabra@github
2+
3+
def fizz_buzz(n):
4+
for i in range(1, n+1):
5+
if i % 3 == 0 and i % 5 == 0:
6+
print("FizzBuzz")
7+
elif i % 3 == 0:
8+
print("Fizz")
9+
elif i % 5 == 0:
10+
print("Buzz")
11+
else:
12+
print(i)
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# tlseabra@github
2+
3+
def polite_seq(n):
4+
odd = lambda x: [odd for odd in range(3, x+1, 2) if x%odd==0]
5+
divisors = odd(n)
6+
sequences = [[] for i in range(len(divisors))]
7+
for i in range(len(divisors)):
8+
d = divisors[i]
9+
for j in range(int(abs(n/d - d/2)) + 1, int(n/d + d/2 + 1)):
10+
sequences[i].append(j)
11+
for x in sequences:
12+
print(''.join(str(x)))
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# tlseabra@github
2+
3+
def valid_score(score):
4+
print(('Va' if score not in [1, 2, 4, 5] else 'Inva') + 'lid Score')
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/* tlseabra@github */
2+
3+
#include <stdio.h>
4+
#define LOL putchar(sizeof(char) << ('c' / '!'));
5+
#define HAHA putchar(0x40 >> !(((0))));
6+
7+
char *text = "Etvmp$Jsspw%%%%\n"
8+
"[e}$xs$ks%$]sy$lezi$wspzih$xli$lmhhir$qiwweki2$Rs{$mx$mw$}syv$xyvr$xs$nsmr\n"
9+
"mr$sr$xlmw$tvero2$Hs$rsx$tswx$er}xlmrk$xlex${mpp$kmzi$e{e}$xlmw$qiwweki2$Pix\n"
10+
"tistpi$higshi$xli$qiwweki$sr$xlimv$s{r$erh$vieh$xlmw$qiwweki2$]sy$ger$tpe}$epsrk\n"
11+
"f}$RSX$tswxmrk$ls{$}sy$higshih$xlmw$qiwweki2$Mrwxieh$tswx$}syv$wspyxmsr$xs$fi$}syv\n"
12+
"jezsvmxi$Lipps${svph$tvskveq$mr$sri$perkyeki$sj$}syv$glsmgi2$\n"
13+
"Qeoi$wyvi$}syv$tvskveq$we}w$&Lipps$[svph%%%&${mxl7ドル$%$ex$xli$irh2$Xlmw${e}\n"
14+
"tistpi$fvs{wmrk$xli$gleppirki${mpp$xlmro${i$lezi$epp$pswx$syv$qmrhw2$Xlswi${ls$tswx$lipps\n"
15+
"{svph$wspyxmsrw${mxlsyx$xli$xlvii$%%%${mpp$lezi$rsx$higshih$xli$qiwweki$erh$ws$}sy$ger$\n"
16+
"tspmxip}$tsmrx$syx$xlimv$wspyxmsr$mw$mr$ivvsv,ドルxli}$evi$nywx$jspps{mrk$epsrk${mxlsyx$ors{mrk-\n"
17+
"Irns}$xlmw$jyr2$Xli$xvyxl${mpp$fi$liph$f}$xlswi${ls$ger$higshi$xli$qiwweki2$>-0円Lipps$[svph%%%";
18+
19+
int main(void){
20+
while(*text){
21+
if(*(text++) == '\n') continue;
22+
putchar(*(text++) - 4); LOL
23+
} HAHA LOL
24+
while(*(++text)) putchar(*text - 4);
25+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/* tlseabra@github */
2+
#include <stdio.h>
3+
4+
char checkDigits(int num){
5+
char digits[4] = {};
6+
for(int i = 0; i < 4; i++){
7+
digits[i] = num%10;
8+
for(int j = i-1; j >= 0; j--){
9+
if(digits[i] == digits[j])
10+
return 1;
11+
}
12+
num /= 10;
13+
}
14+
return 0;
15+
}
16+
17+
int main(){
18+
for(int num = 1000; num < 10000; num++){
19+
if(checkDigits(num)) continue;
20+
int sum = num/100 + num%100;
21+
if(sum*sum == num)
22+
printf("%d\n", num);
23+
}
24+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /