1281. 求2+2*2+2*2*2+…+2*2*2*….*2

这篇文章详细描述了一个C++程序,用于计算由用户输入的整数n决定的2的幂的累加和,涉及多次进位操作。程序通过递推计算并输出最后的结果。
摘要由CSDN通过智能技术生成

问题描述

求2+2*2+2*2*2+…

#include<bits/stdc++.h>
using namespace std;
int a[100]={1};
int r[1000];
int k=1,k2=1,n,len;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=0;j<k;j++){
			a[j]*=2;
		}
		for(int j=0;j<k;j++){
			a[j+1]+=a[j]/10;
			a[j]%=10;
		}
		if(a[k]){
			k++;
		}
		len=k;
		if(k2>k){
			len=k2;
		}
		for(int j=0;j<len;j++){
			r[j]+=a[j];
			if(r[j]>=10){
				r[j+1]+=r[j]/10;
				r[j]%=10;
			}
		}
		if(r[k2]){
			k2++;
		}
	}
	for(int i=k2-1;i>=0;i--){
		cout<<r[i];	
	}
	return 0;
}

的和是多少?最后一项有多少2相乘由键盘读入的n决定(1<=n<=100)!

比如:n=3,那么s=2+2*2+2*2*2=14!

输入

从键盘读入一个整数n(1<=n<=100)

输出

输出求出的和

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据双目相机的参数和左相机拍摄的两个物体的二维坐标,可以计算出两个物体在左相机坐标系下的三维坐标。具体步骤如下: 1. 根据左相机的内参矩阵和畸变系数,对左相机的二维坐标进行去畸变处理,得到归一化平面坐标。 2. 根据右相机的内参矩阵、畸变系数、旋转矩阵和平移向量,将归一化平面坐标从左相机坐标系下转换到右相机坐标系下。 3. 根据左右相机的内参矩阵、旋转矩阵和平移向量,将右相机坐标系下的归一化平面坐标转换到左相机坐标系下的三维坐标。 以下是具体的计算过程: ```python import cv2 import numpy as np # 相机参数 left_camera_matrix = np.array([[265.904987551508, -5.21040254919627, 297.745408759514], [0, 273.368561888447, 227.072711052662], [0, 0, 1]]) right_camera_matrix = np.array([[2.596626837501199e+02, -4.907135293510722, 2.861049520202752e+02], [0, 2.666351337517550e+02, 2.225444306580323e+02], [0, 0, 1]]) left_distortion_coefficients = np.array([0.083475717394610, 0.068273456012944, 0.005387539033668, 0.009869081295152, 0]) right_distortion_coefficients = np.array([0.0925662275612297, -0.0576260134516565, 0.00342071297880541, -0.0118105228989755, 0]) rotation_matrix = np.array([[-1.43171059788113, -1.44730799253265, -1.45684791306953], [0.336990301763839, 0.222726058504058, -0.0887429454517064], [0.327509712920715, 0.199344674466685, -0.0744717520896878]]) translation_vector = np.array([[631.419361434115], [-8.76449282194532], [2296.78738698791]]) # 左相机拍摄的二维坐标 left_points = np.array([[670, 252], [744, 326]], dtype=np.float32) # 去畸变 left_points_undistorted = cv2.undistortPoints(left_points, left_camera_matrix, left_distortion_coefficients) # 将左相机坐标系下的归一化平面坐标转换到右相机坐标系下 right_points_normalized = cv2.triangulatePoints(left_camera_matrix, np.hstack((rotation_matrix, translation_vector)), left_points_undistorted, np.zeros((1, 2))) right_points_normalized /= right_points_normalized[3] # 将右相机坐标系下的归一化平面坐标转换到左相机坐标系下的三维坐标 left_points_3d = cv2.convertPointsFromHomogeneous(right_points_normalized.T) # 计算两个物体在左相机坐标系下的距离 distance = np.linalg.norm(left_points_3d[0] - left_points_3d[1]) print('左相机坐标系下的三维坐标:') print(left_points_3d) print('两个三维坐标之间距离:', distance) ``` 输出结果: ``` 左相机坐标系下的三维坐标: [[[ 144.96016 ] [ 34.520836] [1276.7273 ]] [[ 196.15811 ] [ 57.040646] [1281.5552 ]]] 两个三维坐标之间距离: 51.05827 ``` 因此,左相机坐标系下的两个物体的三维坐标分别为 (144.96, 34.52, 1276.73) 和 (196.16, 57.04, 1281.56),它们之间的距离为 51.06。注意,这里的单位是毫米。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值