lzy的数论挑战

故事背景
lzy最近迷恋数论!刚刚学完了最大公约数gcd,然后lzy就和hh进行了世纪数论决斗。

题目描述
现在轮到hh进攻了,hh出题如下:

任意给一个整数n, 那么整数 n 和 a^1999+b^1999+c^1999(满足a+b+c=0,且a,b,c都是整数)的固定最大公约数是多少?

(也就是说,无论abc取什么,都存在这样一个最大公约数)。

输入输出格式
输入:一行,一个整数,n。

输出:一行,一个整数,固定最大公约数。

输入输出样例
输入样例: 10

输出样例:2

数据范围
对于20%的数据, |n|≤10|n|≤10
对于80%的数据,|n|≤5000|n|≤5000
对于100%的数据,|n|≤1×1e9


据涵神说这题有坑,但他自己出的题,这个锅先不管了。
简略地证明一下吧,其实我不是很明确:

对于一个数 x,我们先考虑它 mod 2的情况,可以显然得, x^1999 ≡ x ( mod 2 )。

再考虑它 mod 3,假设 x mod 3=0,显然 x^1999 mod 3=0;
假设 x mod 3=1,取模在乘法意义下是直接成立的,所以可将 x^1999 mod 3 展开为 [( x mod 3 ) * ( x mod 3 )……* ( x mod 3 )] mod 3 = 1^1999 mod 3 = 1。故 x^1999 mod 3=1。
假设 x mod 3=2。如上所述,x^1999 mod 3 = [( x mod 3 ) * ( x mod 3 )……* ( x mod 3 )] mod 3 = 2^1999 mod 3。我们找一下规律: 2^1 mod 3 = 2,2^2 mod 3 = 1,2^3 mod 3 = 2……数学归纳法,2的奇次幂 mod 3 均为 2,故 x^1999 mod 3=2。

综上所述, x^1999 ≡ x ( mod 3 )。
回到原题,我们可以知道 a^1999+b^1999+c^1999 ≡ a+b+c ( mod 2 ) ; a^1999+b^1999+c^1999 ≡ a+b+c ( mod 3 )。
题目还告诉我们,a+b+c = 0,也就是说,2 | a^1999+b^1999+c^1999;3 | a^1999+b^1999+c^1999;那么亦有 6 | a^1999+b^1999+c^1999。

至于为什么别的数不可以呢,我也不知道啊。
迟到的补充:正是因为这一点,所以这道题是存在纰漏的。即:我们无法确定其它数不是正解。

涵神太强了。!

int main()
{
    read(n);
    if(!(n&1)&&!(n%3)) printf("6");
    else if(!(n&1)) printf("2");
    else if(!(n%3)) printf("3");
    else printf("1");
    return 0;
}
`com.lzy.widget:imagepicker` 是一个用于图片选择的 Android 开源库,以下是关于它的使用指南、文档及常见问题解决方案的相关信息: ### 使用指南 #### 1. 添加依赖 在项目的 `build.gradle` 文件中添加以下依赖: ```groovy dependencies { implementation 'com.lzy.widget:imagepicker:0.6.1' } ``` #### 2. 配置权限 在 `AndroidManifest.xml` 中添加必要的权限: ```xml <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.CAMERA" /> ``` #### 3. 初始化 ImagePicker 在 `Application` 类或者 Activity 中初始化 `ImagePicker`: ```java ImagePicker imagePicker = ImagePicker.getInstance(); imagePicker.setImageLoader(new GlideImageLoader()); // 设置图片加载器 imagePicker.setShowCamera(true); // 显示拍照按钮 imagePicker.setCrop(true); // 允许裁剪(单选才有效) imagePicker.setSaveRectangle(true); // 是否按矩形区域保存 imagePicker.setSelectLimit(9); // 选中数量限制 imagePicker.setStyle(CropImageView.Style.RECTANGLE); // 裁剪框的形状 imagePicker.setFocusWidth(800); // 裁剪框的宽度。单位像素(圆形自动取宽高最小值) imagePicker.setFocusHeight(800); // 裁剪框的高度。单位像素(圆形自动取宽高最小值) imagePicker.setOutPutX(1000); // 保存文件的宽度。单位像素 imagePicker.setOutPutY(1000); // 保存文件的高度。单位像素 ``` #### 4. 启动图片选择器 ```java Intent intent = new Intent(this, ImageGridActivity.class); startActivityForResult(intent, REQUEST_CODE_PICK_IMAGE); ``` #### 5. 处理选择结果 ```java @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == ImagePicker.RESULT_CODE_ITEMS) { if (data != null && requestCode == REQUEST_CODE_PICK_IMAGE) { ArrayList<ImageItem> images = (ArrayList<ImageItem>) data.getSerializableExtra(ImagePicker.EXTRA_RESULT_ITEMS); // 处理选择的图片 } else { Toast.makeText(this, "没有选择图片", Toast.LENGTH_SHORT).show(); } } } ``` ### 常见问题解决方案 #### 1. 图片加载不显示 可能是图片加载器配置不正确,确保已经正确设置了图片加载器,例如使用 `Glide`: ```java imagePicker.setImageLoader(new GlideImageLoader()); ``` #### 2. 裁剪功能无效 检查是否开启了裁剪功能: ```java imagePicker.setCrop(true); ``` 并且确保是单选模式,裁剪功能只在单选时有效。 #### 3. 权限问题 确保在 `AndroidManifest.xml` 中添加了必要的权限,并且在运行时请求权限(Android 6.0 及以上): ```java if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE); } ``` ### 文档 官方文档可以在该库的 GitHub 仓库中找到,地址为:[https://github.com/jeasonlzy/ImagePicker](https://github.com/jeasonlzy/ImagePicker) ,仓库中包含了详细的使用说明和示例代码。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值