http://www.usaco.org/index.php?page=viewproblem2&cpid=946 Bu soruyu açıklayabilir misiniz? |
O bir algoritma sorusu dolayısıyla (test, debug, optimizasyon de bunun gibi çevrimler ekli 5-10 anda çözülecek bir nes değil ki o yaprakta "olimpiyatlar" diyor. Burada konumuz temel yada orta düzey programcılık soruları örneğin alttaki program forumdaki 20 temel döngü ile koşul yapısı programlama sorusu (https://forum.donanimhaber.com/temel-programlama-sorulari-dongu-ve-kosul-yapilari--137712410) 17. soru, onu en kısa kaç sırada kodlayabilirsin? Kullanıcının girdiği Ocak gelir parası ile aylık gelir artış oranına göre yıl boyunca artan geliri yazdıran program Örnek: Ocak geliri ile aylık artış oranını girin: 4000 0.05 |
Konumuz yalın kod yazmak ancak esas amaç yeni programlama yöntemlerini etkili biçimde kullanmak. Durum böyleyken sen klasik C kodu yazdın. "{" ile başlayan sıralar dışında 16 sıralık senin C kodu Perl 6'da tek sıra :)
Çalışma anı: < Resime gitmek için tıklayın > Şimdi başka bir soru: Paskal üçgenini basan kod yazınız. 5 değerinde Paskal üçgeni için örnek çıktılar:
Sola yatık de arada virgül olan, dizi operatörü içeren çıktılar da olabilir ancak böyle çıktı daha iyi görünüyor dogal olarak. Not: Paskal üçgeninin Wikipedia ile birlikte Internette birçok sitede çözümü var. |
https://forum.donanimhaber.com//mesaj/yonlen/139500699 < Resime gitmek için tıklayın > tek satır ![]() |
https://rosettacode.org/wiki/Pascal%27s_triangle#Perl_6 her dilde var |
https://www.programiz.com/c-programming/examples/fibonacci-series for (int n=1, i = 1, t1 = 0, t2 = 1,nextTerm; i <= n; i==1?scanf("%d", &n):i=i,printf("%d, ", t1), nextTerm = t1 + t2, t1 = t2, t2 = nextTerm,++i);; c dili türkçemiz gibi esnek bir dildir, ikisinin de kıymetini bilelim ![]() |
@FatihAsl https://forum.donanimhaber.com/link-139633625 'deki maaş artış hesapla problemi
Perl 6 ile tek satırda çözümü (forumdaki code etiketi kodu bozdugu için SS gönderdim) < Resime gitmek için tıklayın > |
linkini veriyorum adamlar Perl den Go ya geçmişler. gerçek dünya çok farklı https://medium.com/@alvintz.v/how-we-migrate-from-perl-to-golang-1520a4951392 |
|
go ile sadece 5 satır, kodu online test etmek için link https://play.golang.org/p/GnnzSvQXRHO < Resime gitmek için tıklayın > |
raw_input Python 2'de kaldı.. artık kullanma onu, seneye Python 2 diye birşey yok, bitti https://pythonclock.org/ |
https://hizliresim.com/lQVgjB olmuş mu hocam? |
Reddit'te geçen ay bir gönderi:https://www.reddit.com/r/learnprogramming/comments/e7ggyf/got_denied_from_internship_this_was_one_of/ Amerikadaki bir finans firmasında iş görüşmesinde böyle bir soru çıkmış (Türkçesi altta)
Verilen bir s dizesinde k sayısı ölçüsünde özdeş karakterleri içeren ardışık alt dizeleri (= perfect / kusursuz substring / altdize) bulunuz. Mülakatta bu soruyla karşılaşan kişi, C++ ile çözmeye calıştım ancak uzun dizelerde çözüm zorlanıyor, de bunun gibi demiş. Yorumlarda en anlaşılır çözüm 20 sıralık Python kodu. Ancak o çözüm kusursuz alt dizelerin yalnızca toplam sayısını veriyor, kendilerini vermiyor, o sayede de 20 sıra. Kusursuz altdizeleri veren de comment'ler dışında 20 SLOC (Single Lines Of Code) altında (dolayısıyla reddit'teki en açık de kısa çözümden daha kısa de net biçimde) bir kod ile soruyu çözünüz. |
https://repl.it/repls/YellowOlivedrabDirectories veyahttps://paste.ubuntu.com/p/vQ7WRdz4MN/ string uzunluğu x 10 luk bir tabloda her string indexi için ondan baştan itibaren olan sayıları tekrar miktarını tuttum sonra da ikili ikili olabilecek başlangıç ve bitiş noktalarına göre bu ikisinin farkını alıp eğer o farkların hepsi k 'nın katı ise bunu bastırmasını söyledim. https://www.geeksforgeeks.org/prefix-sum-array-implementation-applications-competitive-programming/ prefix sum gibi bir şey kullanarak, i-j arasındaki farkı ver dediğimde versin istediğim için böyle bir şey yapmış oldum. O ( n^2 ) veya O(n*k) ile çalışıyor şuanda, O(n*k) demek daha doğru galiba, tam emin olamadım ama substringi bastırmanın da maliyeti varmış, bu sebeple O(n^2*k) oluyor sanırım |
< Resime gitmek için tıklayın > Cevap: 957496696762772407663 yani e sayısıni açtığımızda 2,71......957496696762772407663....... şeklinde devam ediyormuş. Arada bir yerde bu 21 basamaklı sayı var. Programda tek basamak kaydırarak 21 haneyi alıp asal mı değil mi kontrol ediyoruz sırasıyla. e sayısının 10 bin basamaığı şu linkte mevcut: https://www.math.utah.edu/~pa/math/e.html Veya direk kendi formülüyle de her basamağı bulunabiliyor: https://en.wikipedia.org/wiki/E_(mathematical_constant) Ama sanırım zaten siz bu kısmı yapmışsınız. |
Goldbach hipotezine göre 2'den büyük her düz (2 ile eksiksiz bölünebilen, "even") sayı, iki asal sayının toplamı biçiminde yazılabilir.https://tr.wikipedia.org/wiki/Goldbach_hipotezi Bunu test eden program yazarak şu (düz) sayılara dayalı 2 asal sayıyı listeleyiniz: 28, 36, 52, 112, 442 |
Goldbach hipotezi o denli karışık bir nes değil. Vikipedi'den alıntı:https://tr.wikipedia.org/wiki/Goldbach_hipotezi 2'den büyük her düz sayı, iki asal sayının toplamı biçiminde yazılabilir Bu hipotezi kullanarak şu 5 (düz) sayıya ilişkin 2 asal sayıyı listeleyiniz: 28, 36, 52, 112, 442 Edit: Bu problemde asal sayı test fonksiyonu yalnızca yardımcı işlevdir o yüzden asal sayı test fonksiyonu derleyicide (örneğin is-prime gibi) yerleşik olarak varsa kullanabilirsiniz. |
https://forum.donanimhaber.com/c-dilinde-birbirinden-farkli-random-sayilar-atama--148476356 'daki soru için Python yada başka dilleri kullanarak 10 - 30 sıra arası çözüm göndermişler. Raku ile o 1 sıralık iş :) say (50.rand.Int, { first * == none(@_), (@_[*-1], {50.rand.Int} ... Inf)[^50] } ... Inf )[^20] ekran görüntüsü: < Resime gitmek için tıklayın > |
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-10#151518222
23- (bozuk para problemi / coin change problem) - özyinel (recursion) kullanarak çözmek 30.Eylül.2021
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-10#150695595
22- Verilen bir sayının 'Happy Number' olup olmadığını bulunuz 4.Eylül.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-9#145383351
21- Goldbach hipotezi kapsamında 28, 36, 52, 112, 442 'e bağlı olan 2 asal sayıyı bulunuz 12.Şubat.2020
https://forum.donanimhaber.com/mesaj/yonlen/141982182
20- Basamakları toplamının küpü kendisine eşit sayıyı bulmak 2.Şubat.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-8#141864146
19- k'lı euler sayısını buldurmak 25.Ocak.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-8#141759076
18- euler sayısı içindeki 21 basamaklı asal sayıyı bulmak 23.Ocak.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-7#141662776
17- euler sayısını buldurmak 18.Ocak.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-8#141666366
16- reddit'teki perfect substring iş görüşmesi sorusu 07.01.2020
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-7#141535375
15- 3 listenin transpozesini almak 16.12.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-7#141251974
14- 2000'e dek ayna sayıları bulmak 22.Kasım.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-6#140908947
13- hello yu h.e.l.l.o. biçiminde yazdırmak 19.Kasım.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-6#140860460
12- SS'te formulü verilen temel matematiksel seriyi buldurunuz 3.Kasım.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-6#140641767
11- 123456789 permütasyonlarından 111.111'nciyi bulmak 20.10.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-6#140456246
10- Cok büyük sayıların asal olup olmadığını denetlemek 19.10.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-6#140427054
09- sort kullanmadan bir serinin artıp artmadığını denetlemek 15.10.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-5#140394128
08- 1'den 10'a dek sayıların faktöryelini buldurmak 30.Eylül.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-5#140215118
07- 1 Milyonuncu fibonacci sayısını bulmak' 17.09.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#140034841
06- 'Dize (string) içindeki en uzun "a e i o u" serisini bulmak' 15.09.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#140003021
05- Formul kullanarak altın oranı buldurmak 11.Eylül.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#139953235
04- 'aylık kazanç ile kazanç artış oranı listesini çıkarmak' 19.08.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#139633625
03- Kullanıcıdan alınan sayıya dek paskal üçgeni yazdırmak 16.08.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#139593897
02- Kullanıcıdan alınan sayıya dek fibonacci sayısını yazdırmak 16.08.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992-3#139586952
01- Paskal üçgeni yazdırmak 9.Ağu.2019
00- Kullanıcının girdiği 2 sayının arasındaki sayılardan 3'e eksiksiz bölünebilen sayıları büyükten küçüge sıralamak 7.Ağu.2019
https://forum.donanimhaber.com/reddit-hn-euler-dh-gibi-sitelerden-is-gorusmesi-sorulari-odev-sorulari--139462992#139479530
< Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 15 Eylül 2022; 0:34:21 >
Bu mesajda bahsedilenler: @burak jr