Ana Sayfa > C#, Programlama > Kısa Sınav – 12

Kısa Sınav – 12

Kod yazma yeteneklerimizi ölçebileceğimiz sitelerden Codility‘de test olarak yapabileceğiniz bir soru bulunuyor. Aşağıdaki görselde soruyu görebilirsiniz.

Codility sitesinde yayınlanan demo test

Benim çözümüm devam eden sayfada. Sizde çözümünüzü yazın bakalım.

int equi ( int[] A )
{
	Int64 ilkYari;
	Int64 sonYari;
	for (int iLoop = 0; iLoop < A.Length; iLoop++)
	{
		ilkYari = 0;
		sonYari = 0;
		for (int yLoop = 0; yLoop <= iLoop; yLoop++)
			ilkYari += A[yLoop];
		for (int zLoop = iLoop; zLoop < A.Length; zLoop++)
			sonYari += A[zLoop];
		if (ilkYari == sonYari)
			return iLoop;
	}
	return -1;
}

İlgili diğer başlıklar:

  1. Bu kodda ne yanlış var? – 4
  2. Kısa Sınav – 15
  3. Kısa Sınav – 11
  4. Kısa Sınav – 16
  5. Kısa Sınav – 3


  1. Şubat 18th, 2010 at 13:43 | #1

    Benim çözümüm codility’de daha çok puan alıyor ;)

    int equi( int[] A )
    {
    	Int64 left = 0;
    	Int64 right = 0;
    	for (int y = A.Length - 1; y >= 0; y--)
    		right += A[y];
    	for (int i = 0, il = A.Length; i < il; i++)
    	{
    		right -= A[i];
    		if (left == right)
    			return i;
    		left += A[i];
    	}
    	return -1;
    }
  2. Şubat 18th, 2010 at 14:31 | #2

    Benim yorumum böyle değildi. Değiştirmişsin. :) 100 puanı beraber aldık.