suhovaab
?>

Садовод вася посадил у себя на участке, на севере, юге, западе и востоке по саженцу деревьев: вишня, груша, слива, яблоня. но на следующий год забыл, что где растет, но помнит несколько правил, по которым он расположил саженцы: 1.на востоке растёт либо слива, либо вишня. 2.сторона света, в которой растет груша соседняя со стороной света, в которой растет яблоня и соседняя со стороной света, в которой растет слива. 3.груша растёт на западе, тогда и только тогда, когда на востоке вишня или слива. 4.вишня растёт на юге, тогда и только тогда, когда на севере слива или груша. васе вспомнить расположение деревьев. в ответ выведите первые буквы саженцев, начиная с севера и по часовой стрелке. (например, если на севере растет вишня, на востоке – груша, на юге – слива, на западе – яблоня, то в ответе указать вгся)

Информатика

Ответы

Olgera1
Так как на востоке растут либо вишня, либо слива, то там не могут расти груша и яблоня, ставим минусы в таблицу.
Так как по обе стороны от груши должны расти яблоня и слива, то для груши остаётся место только на западе (так как север и юг будут свободны), ставит плюс в в таблице на пересечении груша/запад, а по вертикали и горизонтали все свободное заполняем минусами.
"Сторона света, в которой растет груша соседняя со стороной света, в которой растет яблоня и соседняя со стороной света, в которой растет слива." Нам известно, что слива может расти на востоке, но восток - сторона, не соседняя с западом, значит, на востоке слива расти не может, тогда на востоке растет вишня. Ставим плюс в таблице на пересечении восток/вишня, по горизонтали и вертикали от этого плюса все заполняем минусами.
Из условия 4 исходим из того, что вишня у нас растет не на юге, значит ни груша, ни слива не растут на севере. Тогда для сливы остаётся место только на юге, а для яблони, соответственно, на севере.
Север - яблоня, восток - вишня, юг - слива, запад - груша.
ответ: ЯВСГ
antongenfon
#include <cstdio>
#include <cstring>

int
main(void)
{
    enum
     {
        MAX_BUF_SIZE = 100
    };

    char buf[MAX_BUF_SIZE];
    scanf("%s", buf);
    int n = strlen(buf);
    int shift = 0;
    for (int i = 0; i < n; i++) {
        shift = (shift + buf[i] - '0') % 3;
    }
    shift = 3 - shift;
    int sel = -1;
    for (int i = 0; i < n; i++) {
        int tmp = buf[i] - '0' + shift;
        if (0 <= tmp && tmp <= 9) {
            sel = i;
            break;
        }
    }
    if (sel == -1) {
        for (int i = n - 1; i >= 0; i++) {
            int tmp = buf[i] - '0' - shift;
            if (0 <= tmp && tmp <= 9) {
                buf[i] -= shift;
                break;
            }
        }
    } else {
        buf[sel] += shift;
        while ('0' <= buf[sel] + 3 && buf[sel] + 3 <= '9') {
            buf[sel] += 3;
        }
    }
    printf("%s\n", buf);
    return 0;
}
sidorov9
#include <iostream>
#include <string>
#include <vector>
using namespace std;
 
int main()
{
    int sum = 0;
    vector<int> v;
    string s;
    cin >> s;
    for (int i = 0; i < s.size(); ++i) {
       v.push_back((int)s[i] - 49);
       ++sum; ++v[i];
   }
   int z = sum % 3; z = 3 - z;
   {
    int i = 0;
    while (i <= v.size() && (v[i] + z) > 9) {
       ++i;
    }
    if (i >= v.size()) {
      if (z == 3) {
          v[v.size() - 1] -= 3;
      } else {
          v[v.size() - 1] -= (3 + z);
      }
    } else {
       v[i] += z;
       while ((v[i] + 3) < 9) {
           v[i] += 3;
       }
     }
   }
   for (int i = 0; i < v.size(); ++i) {
       cout << v[i];
   }
   return 0;
}

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Садовод вася посадил у себя на участке, на севере, юге, западе и востоке по саженцу деревьев: вишня, груша, слива, яблоня. но на следующий год забыл, что где растет, но помнит несколько правил, по которым он расположил саженцы: 1.на востоке растёт либо слива, либо вишня. 2.сторона света, в которой растет груша соседняя со стороной света, в которой растет яблоня и соседняя со стороной света, в которой растет слива. 3.груша растёт на западе, тогда и только тогда, когда на востоке вишня или слива. 4.вишня растёт на юге, тогда и только тогда, когда на севере слива или груша. васе вспомнить расположение деревьев. в ответ выведите первые буквы саженцев, начиная с севера и по часовой стрелке. (например, если на севере растет вишня, на востоке – груша, на юге – слива, на западе – яблоня, то в ответе указать вгся)
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

filippovev1
ekaterinkat
ale99791308
lor005148
alexst123012225
kas80
bergamon
eduard495
aynaakzhigitova
mihalewanadia20176987
srgymakarov
Лихачев Полина1978
innesagrosheva22
sveta1308
Plamia7917