洛谷C++简单题小练习day18—牛奶数字游戏,拿放大镜看杂志暴力算法

本文主要是介绍洛谷C++简单题小练习day18—牛奶数字游戏,拿放大镜看杂志暴力算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

day18--牛奶数字游戏--2.22

习题概述

题目描述

奶牛们在玩一种数字游戏,Bessie 想让你帮她预测一下结果。游戏开始时,Bessie 将得到一个正整数 N。此时她的分数为 0。

奶牛们按照以下规则对 N 进行变换:

·如果 N 是奇数,那么将它乘以 3 后再加 1。

·如果 N 是偶数,那么将它除以 2。

数字每变换一次,Bessie 就得到 1 分。当 N=1 时,游戏结束。此时的分数就是她的最终得分。

输入格式

一行,一个整数 N。

输出格式

一行,一个整数,为 Bessie 的最终得分。

代码部分

#include<bits/stdc++.h>
using namespace std;int N;
double s=0;//分数 
int main(){cin>>N;while(N!=1){   if(N%2!=0) N=N*3+1;else N=N/2;s++;}cout<<s;return 0;
}

心得体会

while和if在C++中的区别
相同点:均可进行一次判断;

不同点:while本质上是循环,当判断条件为true时,进入循环体,然后再接着进行判断,直到判断条件为false,跳出循环;if虽然也可以进行判断,当判断条件为true时,执行语句sum++,当判断语句为false时,执行语句targe++,不会接着再次返回到if,也就是说,不会再继续进行判断。

综上所述:while本质上是循环,if本质上是一个条件判断


day18--拿放大镜看杂志暴力算法--2.22 

习题概述

题目背景

Mirko 在拿放大镜看杂志。

题目描述

他正在看一面 r 行 c 列的杂志。放大镜有两个参数 zr,zc,表示把每个字符都转换成一个 zr 行 zc 列的矩阵。

给出原始杂志,请你帮他找出杂志在放大镜下的影像。

输入格式

输入第一行四个整数 r,c,zr,zc。

接下来的 r 行,每行 c 个字符。字符可能为数字,字母或 .

输出格式

输出一个 r×zr 行,c×zc 列的矩阵,表示放大镜下的影像

代码表示

#include<bits/stdc++.h>
using namespace std;char ch[100][100];
int r,c,zr,zc;
int main()
{cin>>r>>c>>zr>>zc;for(int i=1; i<=r; i++)for(int j=1; j<=c; j++)cin>>ch[i][j];//输入for(int i=1; i<=c; i++)//原行数for(int i1=1; i1<=zr; i1++)//放大的行数{for(int j=1; j<=c; j++)//原列数for(int j1=1; j1<=zc; j1++)//放大的列数cout<<ch[i][j];cout<<endl;}//暴力return 0;
}

心得体会

行列都有的时候,需要想想的是双重循环,即行循环再列循环;通过暴力算法循环输出;注意定义时不要忘记数组的定义 char ch[100][100];

这篇关于洛谷C++简单题小练习day18—牛奶数字游戏,拿放大镜看杂志暴力算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/738611

相关文章

C++11范围for初始化列表auto decltype详解

《C++11范围for初始化列表autodecltype详解》C++11引入auto类型推导、decltype类型推断、统一列表初始化、范围for循环及智能指针,提升代码简洁性、类型安全与资源管理效... 目录C++11新特性1. 自动类型推导auto1.1 基本语法2. decltype3. 列表初始化3

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

游戏闪退弹窗提示找不到storm.dll文件怎么办? Stormdll文件损坏修复技巧

《游戏闪退弹窗提示找不到storm.dll文件怎么办?Stormdll文件损坏修复技巧》DLL文件丢失或损坏会导致软件无法正常运行,例如我们在电脑上运行软件或游戏时会得到以下提示:storm.dll... 很多玩家在打开游戏时,突然弹出“找不到storm.dll文件”的提示框,随后游戏直接闪退,这通常是由于

C++中detach的作用、使用场景及注意事项

《C++中detach的作用、使用场景及注意事项》关于C++中的detach,它主要涉及多线程编程中的线程管理,理解detach的作用、使用场景以及注意事项,对于写出高效、安全的多线程程序至关重要,下... 目录一、什么是join()?它的作用是什么?类比一下:二、join()的作用总结三、join()怎么

Java中使用 @Builder 注解的简单示例

《Java中使用@Builder注解的简单示例》@Builder简化构建但存在复杂性,需配合其他注解,导致可变性、抽象类型处理难题,链式编程非最佳实践,适合长期对象,避免与@Data混用,改用@G... 目录一、案例二、不足之处大多数同学使用 @Builder 无非就是为了链式编程,然而 @Builder

C++中全局变量和局部变量的区别

《C++中全局变量和局部变量的区别》本文主要介绍了C++中全局变量和局部变量的区别,全局变量和局部变量在作用域和生命周期上有显著的区别,下面就来介绍一下,感兴趣的可以了解一下... 目录一、全局变量定义生命周期存储位置代码示例输出二、局部变量定义生命周期存储位置代码示例输出三、全局变量和局部变量的区别作用域

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)

c++ 类成员变量默认初始值的实现

《c++类成员变量默认初始值的实现》本文主要介绍了c++类成员变量默认初始值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录C++类成员变量初始化c++类的变量的初始化在C++中,如果使用类成员变量时未给定其初始值,那么它将被

C++中NULL与nullptr的区别小结

《C++中NULL与nullptr的区别小结》本文介绍了C++编程中NULL与nullptr的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 目录C++98空值——NULLC++11空值——nullptr区别对比示例 C++98空值——NUL

C++ Log4cpp跨平台日志库的使用小结

《C++Log4cpp跨平台日志库的使用小结》Log4cpp是c++类库,本文详细介绍了C++日志库log4cpp的使用方法,及设置日志输出格式和优先级,具有一定的参考价值,感兴趣的可以了解一下... 目录一、介绍1. log4cpp的日志方式2.设置日志输出的格式3. 设置日志的输出优先级二、Window