Hackerrank Sitesi Hakkında

Başlatan caesium, 18 Şubat 2014 - 14:26:23

« önceki - sonraki »

0 Üyeler ve 2 Ziyaretçi konuyu incelemekte.

caesium

Bugün internette gördüğüm bir site kendisi. Site girdim üye oldum fakat ıngilizce seviyem yeterli olmadığı için ne olduğunu anlamadım. Orada ki örneklere baktım yapmaya çalıştım ama c kullanarak sorunu halledemedim. :) site ile bilgi sahibi olanlar yardimlarinizi bekliyorum.

sem

Halledemediğiniz nedir tam olarak. Sorunu yazmamışsınız.

Ne yapmaya çalışırken, işi nereye getirdiniz, hangi aşamada takıldınız belirterseniz yardım edilebilir bir hal alabilir başlık. Aksi halde siteye girip, örnekleri denemek ya da sizin hangisini deneyip  de yapamadığınızı kestirmek çok anlamlı olmayacaktır bir çok üye için.
".NET çemberinden geçen lirisist etkisi bir 'Volcano', bir yüzüm Java bir yüzüm Badalamenti Don Tano"
----------------------------------------------------------------------------------------------------------------------
"Her yer ölüm yine, burası dünya
Derken ölüm bile bu nasıl dünya?
Benden ölüm dile, batıyor gün yine
Burası dünya?

caesium

Mesela c dilinde https://www.hackerrank.com/challenges/saveprincess2 bu linkteki problemi nasıl çözeriz. Nasıl yapılacağını anlamadım ben. Örnekte bulamadım. Çözümü anlatırsanız memnun olurum.

7hr33l3t73r

#3
Nasil cozuldugune dair ornek olmasi acisindan.Zaten ne yapacaginizi anladiysaniz geriye kollari sivamak kaliyor.
C++

#include <stdio.h>
#include <iostream>
#include <vector>
#include <queue>
using namespace std;

//Pos tanimi
struct Pos{
int x, y;
vector<string> path;
Pos(int _x, int _y) : x(_x), y(_y){}
};

//Yon ve yon adlarinin tanimi
Pos direction[4] = {Pos(-1, 0), Pos(1, 0), Pos(0, -1), Pos(0, 1)};
string dir_name[4] = {"UP", "DOWN", "LEFT", "RIGHT"};

// Bas burada biter
void nextMove(int n, int x, int y, vector <string> grid){
//Mantik burada
Pos me(x, y);
Pos princess(-1, -1);
bool visited[n][n];
for(int i = 0; i < n; ++i){
for(int j = 0; j < n; ++j){
if(grid[i][j] == 'p'){
princess.x = i;
princess.y = j;
}
visited[i][j] = false;
}
}

// Algoritma(BFS)
queue<Pos> myQueue;
myQueue.push(me);
visited[me.x][me.y] = true;
while(!myQueue.empty()){
Pos pos = myQueue.front();
myQueue.pop();

// Prensese ulasmak
if(pos.x == princess.x && pos.y == princess.y){
if(pos.path.size() > 0){
cout << pos.path[0];
}
cout << endl;
break;
}

// 4 yonde hamle
for(int i = 0; i < 4; i++){
Pos next(pos.x + direction[i].x, pos.y + direction[i].y);

// Gecersiz konum
if(next.x < 0 || next.y < 0 || next.x >= n || next.y >= n || visited[next.x][next.y] == true)continue;
visited[next.x][next.y] = true;

// Guncelleme yolu
next.path.insert(next.path.end(), pos.path.begin(), pos.path.end());
next.path.push_back(dir_name[i]);

// ilave
myQueue.push(next);
}
}
}

//Kuyruk  burada baslar
int main(){
int n, x, y;
string line;
vector<string> grid;

// Giris
cin >> n >> x >> y;
for(int i = 0; i < n; ++i){
cin >> line;
grid.push_back(line);
}

// Cozum
nextMove(n, x, y, grid);
return 0;
}


C

#include <stdio.h>
#include <string.h>
#include <math.h>
/* Head ends here */
void nextMove(int n, int c, int r, char grid[101][101]){
  int i, j, up, left;
  short princess[2];

  /* find the princess */
  for (i = 0; i < n; ++i) {
    for (j = 0; j < n; ++j) {
      if (grid[i][j] == 'p') {
        princess[0] = i;
        princess[1] = j;
      }
    }
  }

  if ((up = princess[0] - r) < 0) {
    printf("UP\n");
    return;
  } else if (up > 0) {
    printf("DOWN\n");
    return;
  }


  if ((left = princess[1] - c) < 0) {
    printf("LEFT\n");
    return;
  } else if (left > 0) {
    printf("RIGHT\n");
    return;
  }
}
/* Tail starts here */
int main(void) {

  int n, x, y;

  scanf("%d", &n);
  scanf("%d", &x);
  scanf("%d", &y);

  char grid[101][101];

  for(int i=0; i<n; i++) {
    scanf("%s[^\n]%*c", grid[i]);
  }

  nextMove(n, x, y, grid);
  return 0;
}


https://github.com/mkhattab/hackerrank-solutions/blob/master/track-1/bot-saves-princess-2.org
dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html