Fix java ver. Update Python ver. Got rid of binary

This commit is contained in:
UltraDesu
2021-04-17 15:47:20 +03:00
parent a254175e10
commit 3c1b6bdc28
5 changed files with 29 additions and 26 deletions

10
.gitignore vendored Normal file
View File

@@ -0,0 +1,10 @@
a.out
.a.out.c
counter
*.swp
.idea
Main.class
sum
sum.bin
sum.build
Sum.class

View File

@@ -1,16 +1,15 @@
public class Main { public class Sum {
public static void main(String[] args) { public static void main(String[] args) {
long start = System.currentTimeMillis(); long start = System.currentTimeMillis();
long number = 1_000_000_000; long number = 1_000_000_000;
long result = 0; long result = 0;
for (int i = 0; i < number; i++) { for (int i = 0; i <= number; i++) {
if (i<10){ long tmp = i;
result += i; while (tmp > 0) {
}else { result = result + tmp % 10;
result = result + (i % 10) + (i/10); tmp = tmp / 10;
} }
} }
System.out.println(result); System.out.println(result);
long finish = System.currentTimeMillis(); long finish = System.currentTimeMillis();

View File

@@ -1,8 +0,0 @@
num = 123
res = 0
while num > 0:
res = res + num % 10
num = int(num / 10)
print(res)

View File

20
sum.py
View File

@@ -9,21 +9,23 @@ import time
# calculating summ between start and end. # calculating summ between start and end.
def sumumatoru_kun(start, end, number, return_dict): def sumumatoru_kun(start, end, number, return_dict):
t = time.process_time() t = time.process_time()
sum_ = 0 res = 0
ss = start ss = start
ee = end ee = end
while start <= end: while start <= end:
for digit in str(start): khui = start
sum_ += int(digit) while khui > 0:
res = res + khui % 10
khui = int(khui / 10)
start += 1 start += 1
return_dict[number] = sum_ return_dict[number] = res
elapsed_time = time.process_time() - t elapsed_time = time.process_time() - t
print(" %s\t|%10d\t|%10d\t|%10d\t|\t%6.2f" % (number, ss, ee, sum_, elapsed_time)) print(" %s\t|%10d\t|%10d\t|%10d\t|\t%6.2f" % (number, ss, ee, res, elapsed_time))
return sum_ return res
def summ(): def sum():
start = 0 start = 0
end = 100000000 end = 1000000000
thread_count = multiprocessing.cpu_count() * 2 thread_count = multiprocessing.cpu_count() * 2
shift = int((end - start) / thread_count) shift = int((end - start) / thread_count)
@@ -52,4 +54,4 @@ def summ():
print("\n\tFinal result is %d" % result) print("\n\tFinal result is %d" % result)
if __name__ == '__main__': if __name__ == '__main__':
summ() sum()