2019/10/27 TZOJ
1001 Gaussian Prime
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=3798
.......................................我是真的一言难尽
1002 Sum of Factorials
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=2696
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define N 1000005
int a[];
void init()
{
a[]=a[]=;
for(int i=;i<;i++)
a[i]=a[i-]*i;
}
int main()
{
init();
int n;
while(~scanf("%d",&n),n>=)
{
if(n==)
{
printf("NO\n");
continue;
}
int all=;
for(int i=;i>=;i--)
{
all+=a[i];
if(all>n) all-=a[i];
}
if(all==n) printf("YES\n");
else printf("NO\n");
}
}
1003 Billboard
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6016
黑板报h*w,第i个广告是1*wi。优先上、左。线段树存剩余最大容量。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define M 200005
int tre[M<<];
void build(int ind,int left,int right,int w)
{
tre[ind]=w;
if(left==right) return;
int mid=(left+right)>>;
build(ind*,left,mid,w);
build(ind*+,mid+,right,w);
tre[ind]=max(tre[ind*],tre[ind*+]);
}
int finda(int ind,int left,int right,int a)
{
if(left==right)
{
tre[ind]-=a;
return left;
}
int mid=(left+right)>>,ans;
if(tre[ind*]>=a) ans=finda(ind*,left,mid,a);
else ans=finda(ind*+,mid+,right,a);
tre[ind]=max(tre[ind*],tre[ind*+]);
return ans;
}
int main()
{
int h,w,n;
while(~scanf("%d%d%d",&h,&w,&n))
{
int minn=min(h,n);
build(,,minn,w);
while(n--)
{
int a;scanf("%d",&a);
if(tre[]<a) printf("-1\n");
else printf("%d\n",finda(,,minn,a));
}
}
}
1004 Monkey Party
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6054
咕
1005 Happy Necklace
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6064
一点都不happy的项链,f(2)=3, f(3)=4, f(4)=6, f(n)=f(n-1)+f(n-2),矩阵快速幂。
1 1 0
A = 0 0 1
1 0 0
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod=1e9+;
struct p{
ll rol,col;
ll matris[][];
};
p Matris(p a,p b)
{
p tem;
memset(tem.matris,,sizeof(tem.matris));
for(ll i=;i<;i++)
for(ll j=;j<;j++)
for(ll k=;k<;k++)
{
tem.matris[i][j]+=a.matris[i][k]*(b.matris[k][j]%mod);
tem.matris[i][j]%=mod;
}
return tem;
}
ll quick_mi(ll n)
{
p res,tep;
res.matris[][]=,res.matris[][]=,res.matris[][]=;
for(int i=;i<=;i++)
for(int j=;j<=;j++)
res.matris[i][j]=;
tep.matris[][]=,tep.matris[][]=,tep.matris[][]=;
tep.matris[][]=,tep.matris[][]=,tep.matris[][]=;
tep.matris[][]=,tep.matris[][]=,tep.matris[][]=;
while(n)
{
if(n&) res=Matris(res,tep);
tep=Matris(tep,tep);
n/=;
}
return res.matris[][]%mod;
}
int main()
{
int t;scanf("%d",&t);
while(t--)
{
ll n;scanf("%lld",&n);
if(n==) printf("3\n");
else if(n==) printf("4\n");
else if(n==) printf("6\n");
else printf("%lld\n",quick_mi(n-));
}
}
1006 CA Loves GCD
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6068
我不爱
1007 Squarefree number
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6071
欧拉筛把10^6内的素数标下,如果除了两个或以上就No。素数除完了可能还很大,就要看是不是完全平方数,否则n就是一个很大的素数或者两个大于10^6的素数乘积。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define N 1000005
int prim[N+];
int vis[N+],cnt=;
void init()
{
vis[]=vis[]=;
for(int i=;i<N;i++)
if(!vis[i])
{
prim[cnt++]=i;
for(ll j=(ll)i*i;j<N;j+=i) vis[j]=;
}
}
int main()
{
init();
int t;scanf("%d",&t);
for(int kk=;kk<=t;kk++)
{
int flag=;
ll n;scanf("%lld",&n);
for(int i=;i<cnt;i++)
{
if(n%prim[i]==)
{
int num=;
while(n%prim[i]==) n/=prim[i],num++;
if(num>=)
{
flag=;
printf("Case %d: No\n",kk);
break;
}
}
}
if(n>&&flag)
{
int q=(int)sqrt(n);
if((ll)q*q==n) printf("Case %d: No\n",kk);
else printf("Case %d: Yes\n",kk);
continue;
}
if(flag) printf("Case %d: Yes\n",kk);
}
}
1008 Gym Class
http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=6081
选自己前面包括自己的最小id作为评分,记录一下要加上的评分minn。没有要求的入度为0进队列。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN=1e9;
const int N=;
vector<int> vec[N];
int inde[N];
priority_queue<int> q;
void init()
{
memset(inde,,sizeof(inde));
for(int i=;i<=N;i++) vec[i].clear();
while(!q.empty()) q.pop();
}
int main()
{
int t;scanf("%d",&t);
while(t--)
{
ll ans=,minn=MAXN;
init();
int n,m;scanf("%d%d",&n,&m);
while(m--)
{
int a,b;scanf("%d%d",&a,&b);
inde[b]++;
vec[a].push_back(b);
}
for(int i=;i<=n;i++)
if(!inde[i]) q.push(i);
while(!q.empty())
{
ll p=q.top();q.pop();
minn=min(p,minn);
ans+=minn;
for(int i=;i<vec[p].size();i++)
{
inde[vec[p][i]]--;
if(inde[vec[p][i]]==) q.push(vec[p][i]);
}
}
printf("%lld\n",ans);
}
}
2019/10/27 TZOJ的更多相关文章
- 2019/10/26 TZOJ
1001 Flooded Island http://www.tzcoder.cn/acmhome/problemdetail.do?&method=showdetail&id=452 ...
- 2019/10/13 TZOJ
水题虽不好,但是很爽 渴望未来某天能把剩下的题补了,先做个记录. Hard Disk Drive http://acm.hdu.edu.cn/showproblem.php?pid=4788 单位转化 ...
- Alpha冲刺(4/10)——2019.4.27
所属课程 软件工程1916|W(福州大学) 作业要求 Alpha冲刺(4/10)--2019.4.27 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪 ...
- Beta冲刺(6/7)——2019.5.27
所属课程 软件工程1916|W(福州大学) 作业要求 Beta冲刺(6/7)--2019.5.27 团队名称 待就业六人组 1.团队信息 团队名称:待就业六人组 团队描述:同舟共济扬帆起,乘风破浪万里 ...
- 背水一战 Windows 10 (27) - 控件(文本类): TextBlock
[源码下载] 背水一战 Windows 10 (27) - 控件(文本类): TextBlock 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) TextBlock 示例 ...
- 第15次Scrum会议(10/27)【欢迎来怼】
一.小组信息 队名:欢迎来怼 小组成员 队长:田继平 成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/27 17:20~17:45,总计25min. 地点 ...
- JZOJ 4269. 【NOIP2015模拟10.27】挑竹签
4269. [NOIP2015模拟10.27]挑竹签 (File IO): input:mikado.in output:mikado.out Time Limits: 1000 ms Memory ...
- 2019.10 搜索引擎最新排名,Elasticsearch遥遥领先
大数据的搜索平台已经成为了众多企业的标配,Elasticsearch.Splunk(商业上市公司).Solr(Apache开源项目)是其中最为优秀和流行的选择.在2019.10 最新搜索引擎排名中,E ...
- [New!!!]欢迎大佬光临本蒟蒻的博客(2019.11.27更新)
更新于2019.12.22 本蒟蒻在博客园安家啦!!! 本蒟蒻的博客园主页 为更好管理博客,本蒟蒻从今天开始,正式转入博客园. 因为一些原因,我的CSDN博客将彻底不会使用!!!(带来不便,敬请谅解) ...
随机推荐
- HDU 3228 题解(最小生成树)(Kruskal)(内有详细注释)
Problem Description A group of explorers has found a solitary island. They land on the island and ex ...
- Oracle DBA_EXTENTS视图 与 DBA_SEGMENTS视图
DBA_EXTENTS describes the extents comprising the segments in all tablespaces in the database. Note ...
- Jquery实例链接
jquery学习笔记 jquery实现全选,反选,取消的操作 左侧菜单收缩的实现(包括,筛选器,addclass.removeclass.绑定事件,链式编程) 模态对话框实现增加删除表格里面的内容 j ...
- wxpython菜单栏、子菜单栏、弹出菜单栏、状态栏小程序学习源代码分享
#coding=utf-8 import wx class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self,None,-1, ...
- Linux用户都应该了解的命令行省时技巧
每个Linux用户都应该了解的命令行省时技巧 有网友在问答网站Quora上提问:“有哪些省时小技巧,是每个Linux用户都应该知道的?” Joshua Levy 平常就在 Linux 平台工作,并且他 ...
- 02.action--新增精灵知识点
import cocos from cocos.actions import * class HelloWorld(cocos.layer.ColorLayer): # ColorLayer子类化为具 ...
- Spring---数据访问
1.Spring Data概述 1.1.Spring Data 项目 是 Spring用来解决数据访问问题 的一站式解决方案,包含了 大量关系型数据库.非关系型数据库 的 数据访问解决方案 ...
- 【HbuilerX-Bug】终端无法显示打印信息,也无法输入
经过调试HbuilderX“终端”插件,最终定位问题,问题是插件在打开终端时,无法定位具体的窗口程序,如“cmd.exe”.“powershell.exe”等.可能产生原因:1.可能是电脑系统升级产生 ...
- Knative 实战:基于 Knative Serverless 技术实现天气服务
提到天气预报服务,我们第一反应是很简单的一个服务啊,目前网上有大把的天气预报 API 可以直接使用,有必要去使用 Knative 搞一套吗?杀鸡用牛刀?先不要着急,我们先看一下实际的几个场景需求: 场 ...
- zabbix创建钉钉报警
https://juejin.im/post/5c8708eef265da2dd168a1c1 简介 家里搭建了zabbix去监控主机,邮件报警什么的都太麻烦了,所以直接使用钉钉机器人来提醒,下面是我 ...