【百度之星】【java大数+C++做法】hdu 6719 Strassen

代码:递归搜索一下。java大数做法
import java.util.*;
import java.math.*;
import java.security.MessageDigest; public class Main {
static BigInteger s=BigInteger.ONE.add(BigInteger.ONE);
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
int T;
T=cin.nextInt();
while(T-->)
{
BigInteger a,b,n; n=cin.nextBigInteger();
a=cin.nextBigInteger();
b=cin.nextBigInteger();
BigInteger ans=cul(n,a,b).mod(BigInteger.valueOf());
System.out.println(ans); }
}
public static BigInteger cul(BigInteger n,BigInteger a,BigInteger b)
{
if(n.equals(BigInteger.ONE))
{
BigInteger sum1=n.multiply(n).multiply(n).multiply(b).add(n.subtract(BigInteger.ONE).multiply(n).multiply(n).multiply(a));
return sum1;
}
return min((n.divide(s)).multiply(n.divide(s)).multiply(BigInteger.valueOf()).multiply(a).add(cul(n.divide(s),a,b).multiply(BigInteger.valueOf())),n.multiply(n).multiply(n).multiply(b).add(n.subtract(BigInteger.ONE).multiply(n).multiply(n).multiply(a)));
}
private static BigInteger min(BigInteger add, BigInteger add2) {
// TODO Auto-generated method stub
if(add.compareTo(add2)<)
return add;
else return add2;
}
}
C++:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<queue>
#include<set>
#include<cmath>
#include<string>
#include<map>
#include<vector>
#include<ctime>
#include<stack>
using namespace std;
#define mm(a,b) memset(a,b,sizeof(a))
typedef long long ll;
const long long mod = 1e9 + ;
const int maxn = 1e5 + ;
const ll inf = 1e18;
ll a, b;
ll f1(ll n) {
n %= mod;
return (n*n%mod*n%mod*b%mod + n * n%mod*(n - ) % mod*a%mod) % mod;
}
ll f2(ll n) {
if (n % ) return f1(n);
if (n <= * a / (a + b)) return f1(n);
return ( * (n / ) % mod*(n / ) % mod*a%mod + * f2(n / ) % mod) % mod;
}
int main()
{
int t;
ll n;
cin >> t;
while (t--)
{
scanf("%lld%lld%lld", &n, &a, &b);
printf("%lld\n", f2(n));
}
}
【百度之星】【java大数+C++做法】hdu 6719 Strassen的更多相关文章
- 2017"百度之星"程序设计大赛 - 复赛1001&&HDU 6144 Arithmetic of Bomb【java大模拟】
Arithmetic of Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- 2017"百度之星"程序设计大赛 - 复赛1005&&HDU 6148 Valley Numer【数位dp】
Valley Numer Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tota ...
- 2017"百度之星"程序设计大赛 - 复赛1003&&HDU 6146 Pokémon GO【数学,递推,dp】
Pokémon GO Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- JAVA大数几算--HDU 2054 A == B ?
Problem Description Give you two numbers A and B, if A is equal to B, you should print "YES&quo ...
- 【百度之星】【思维】hdu 6724Totori's Switching Game
思维题,最后只要判断每个点的度数>=k即可. #pragma comment(linker, "/STACK:1024000000,1024000000") #pragma ...
- HDU 5686:2016"百度之星" - 资格赛 Problem B
原文链接:https://www.dreamwings.cn/hdu5686/2645.html Problem B Time Limit: 2000/1000 MS (Java/Others) ...
- HDU 6118 度度熊的交易计划 【最小费用最大流】 (2017"百度之星"程序设计大赛 - 初赛(B))
度度熊的交易计划 Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- HDU 6119 小小粉丝度度熊 【预处理+尺取法】(2017"百度之星"程序设计大赛 - 初赛(B))
小小粉丝度度熊 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- HDU 6114 Chess 【组合数】(2017"百度之星"程序设计大赛 - 初赛(B))
Chess Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
随机推荐
- python交互界面无法使用方向键
问题 python交互界面无法使用方向键,按方向键全变成^[[^C这类型的字符 解决办法 办法1: 使用yum安装readline.readline-devel,然后重装python 这种方法太麻烦了 ...
- angularjs通信以及postmessage与iframe通信
这篇文章是用markdown工具写的,有需要的可以使用vscode打开 # angularjs 控制器.组件之间的通信 ## 一.基于事件的方式 此方式下,主要通过 angularjs 内置指令` ...
- 关于定时器Scheduled(cron)的问题
定时器配置步骤参考:http://blog.csdn.NET/sd4000784/article/details/7745947 下面给出cron参数中各个参数的含义: CRON表达式 含义 & ...
- Codeforces Round #192 (Div. 2) (330A) A. Cakeminator
题意: 如果某一行没有草莓,就可以吃掉这一行,某一列没有也可以吃点这一列,求最多会被吃掉多少块蛋糕. //cf 192 div2 #include <stdio.h> #include & ...
- Windows下安装python2与python3以及分别对应的virtualenv
第三次装python2与python3 除此之外还学会了如何在命令行复制代码1.单击右键2.菜单中选择标记3.按住左键选中需要复制的内容4.松开左键5.单击右键 全局中python版本为python2 ...
- 用scrapy爬取搜狗Lofter图片
用scrapy爬取搜狗Lofter图片 # -*- coding: utf-8 -*- import json import scrapy from scrapy.http import Reques ...
- HelloDjango 系列教程:Django 的接客之道
文中涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 Web 服务简单的说就是处理请求,每个请求就像是一个"顾客".首先热情地把顾客迎接进来,然后满足用户的个性 ...
- maven 打包并导出 lib 第三方jar
一. maven 导出lib 包 执行命令 mvn dependency:copy-dependencies -DoutputDirectory=target/lib 或者在 eclipse 中执行, ...
- 线性分类 Linear Classification
软分类:y 的取值只有正负两个离散值,例如 {0, 1} 硬分类:y 是正负两类区间中的连续值,例如 [0, 1] 一.感知机 主要思想:分错的样本数越少越好 用指示函数统计分错的样本数作为损失函数, ...
- cs231n---语义分割 物体定位 物体检测 物体分割
1 语义分割 语义分割是对图像中每个像素作分类,不区分物体,只关心像素.如下: (1)完全的卷积网络架构 处理语义分割问题可以使用下面的模型: 其中我们经过多个卷积层处理,最终输出体的维度是C*H*W ...