|  | 
|  | 
| вернуться в форум | AC_Sol in c++ Послано Adkham  7 ноя 2017 23:33#include<iostream>#include<string>
 using namespace std;
 int main()
 {
 string box1[3][3] = {    "Alice", "Ariel","Aurora",
 "Phil", "Peter", "Olaf",
 "Phoebus", "Ralph", "Robin"
 };
 string box2[3][3] = {    "Bambi", "Belle", "Bolt",
 "Mulan", "Mowgli", "Mickey",
 "Silver", "Simba", "Stitch"
 };
 string box3[3][3] = {    "Dumbo", "Genie", "Jiminy",
 "Kuzko", "Kida", "Kenai",
 "Tarzan", "Tiana", "Winnie"
 };
 int n, step;
 string names;
 bool here1, here2, here3;
 here2 = here3 = false;
 here1 = true;
 step = 0;
 cin >> n;
 for (int m = 0; m < n; m++)
 {
 cin >> names;
 for (int i = 0; i < 3; i++)
 {
 for (int j = 0; j < 3; j++)
 {
 if (box1[i][j] == names)
 {
 here1 = true;
 if (here2)
 {
 step++;
 }
 else
 if (here3)
 {
 step = step + 2;
 }
 here2 = false;
 here3 = false;
 break;
 }
 }
 }
 for (int i = 0; i < 3; i++)
 {
 for (int j = 0; j < 3; j++)
 {
 if (box2[i][j] == names)
 {
 here2 = true;
 if (here1)
 {
 step++;
 }
 else
 if (here3)
 {
 step++;
 }
 here1 = false;
 here3 = false;
 break;
 }
 }
 }
 for (int i = 0; i < 3; i++)
 {
 for (int j = 0; j < 3; j++)
 {
 if (box3[i][j] == names)
 {
 here3 = true;
 if (here2)
 {
 step++;
 }
 else
 if (here1)
 {
 step = step + 2;
 }
 here1 = false;
 here2 = false;
 break;
 }
 }
 }
 }
 cout << step << endl;
 return 0;
 }
Re: AC_Sol in c++ #include <iostream>#include <string>
 #include <cmath>
 
 
 int32_t get_post_case_offset(const std::string& receiver)
 {
 uint32_t out = 0;
 switch (receiver[0]){
 case 'A':
 case 'P':
 case 'O':
 case 'R':
 out = 0;
 break;
 
 case 'B':
 case 'M':
 case 'S':
 out = 1;
 break;
 
 default:
 out = 2;
 }
 
 return out;
 }
 
 std::string get_receiver(){
 std::string out;
 std::cin >> out;
 return std::move(out);
 }
 
 int main()
 {
 uint32_t n;
 std::cin >> n;
 
 uint32_t steps = 0;
 int32_t last_offset = 0;
 
 for (;n;n--){
 int32_t offset = get_post_case_offset(get_receiver());
 steps += abs(last_offset - offset);
 last_offset = offset;
 }
 
 std::cout << steps << std::endl;
 
 return 0;
 }
 | 
 | 
|