[NOIP2012] 普及组
大模拟
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
int n,m;
int ro[][];//牌子
int ru[][];//本房间上楼
int h[]={};
int sx=;
int start;
int lv;
int main(){ int i,j;
scanf("%d%d",&n,&m);
for(i=;i<=n;i++)
for(j=;j<m;j++){
scanf("%d%d",&ru[i][j],&ro[i][j]);
h[i]+=ru[i][j];
}
scanf("%d",&start);
// printf("%d\n",n);
for(lv=;lv<=n;lv++){
int x=ro[lv][start];
sx+=x;
// printf("test %d\n",sx);
x=x%h[lv]+h[lv];
x=x-ru[lv][start];
while(x>){
start++;
start%=m;
x-=ru[lv][start];
}
//lv++;
}
sx%=;
printf("%d",sx);
return ;
}
分组背包
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
long long f[];
int a[];//第i种花数
int main(){
int n,m;
scanf("%d%d",&n,&m);
int i,j;
for(i=;i<=n;i++)scanf("%d",&a[i]);
f[]=;
for(i=;i<=n;i++){
for(j=m;j>=;j--){
int mi=min(a[i],j);
for(int c=;c<=mi;c++)
f[j]=(f[j]+f[j-c])%;
}
}
f[m]%=;
// printf("%d",f[m]);
cout<<f[m];
return ;
}
暴力枚举判断即可。
很久以前的代码风格,有些诡异
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
int n;
int c,sq;
int x,y;
bool pd(int p){
int i,sqt=sqrt(p);
for(i=;i<=sqt;i++){
if(p%i==)return ;
}
return ;
}
int main(){
scanf("%d",&n);
c=n/;
sq=sqrt(n);
int i,j;
if((c&)==)c+=;
for(i=;i<=sq;i++)
if(pd(i)){
int d=n/i;
if(i*d==n){
printf("%d",d);
return ;
}
}
return ;
}
floyd
↑不是正解,只是因为数据水才混了过去
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
const int inf=;
int c[];
int fl[][];
int mp[][];
//int DFS(){ //}
int main(){
int i,j,n,k,m,s,t;
//in
scanf("%d%d%d%d%d",&n,&k,&m,&s,&t);
for(i=;i<=n;i++){
scanf("%d",&c[i]);
}
for(i=;i<=k;i++)
for(j=;j<=k;j++)
scanf("%d",&fl[i][j]);
for(i=;i<=n;i++)
for(j=;j<=n;j++){
if(i!=j)
mp[i][j]=inf;
}
for(i=;i<=m;i++){
int u,v,d;
scanf("%d%d%d",&u,&v,&d);
mp[u][v]=min(mp[u][v],d);
mp[v][u]=mp[u][v];
}
for(i=;i<=n;i++)
for(j=;j<=n;j++){
if(fl[c[i]][c[j]]==)mp[j][i]=inf;
}
for(k=;k<=n;k++)
for(i=;i<=n;i++)
for(j=;j<=n;j++){
if(mp[i][k]+mp[k][j]<mp[i][j]){
mp[i][j]=mp[i][k]+mp[k][j];
}
}
if(mp[s][t]==inf)printf("-1");
else printf("%d",mp[s][t]);
return ; }
[NOIP2012] 普及组的更多相关文章
- NOIP2012 普及组真题 4.13校模拟
考试状态: 我今天抽签看了洛谷的… 这我能怂???凶中带吉,我怕考试??我!不!怕! 看着整个机房的男同学们,我明白我是不会触发我的忌了.很好,开刷. A. [NOIP2012普及组真题] 质因数分解 ...
- NOIP2012 普及组 T3 摆花——S.B.S.
题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时 ...
- NOIP2012普及组 (四年后的)解题报告 -SilverN
本章施工仍未完成 现在的时间是3.17 0:28,我困得要死 本来今天(昨天?)晚上的计划是把整个四道题的题解写出来,但是到现在还没写完T4的高效算法,简直悲伤. 尝试了用floyd写T4,终于大功告 ...
- [Noip2012普及组]摆花
Description 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共 m 盆.通过调查顾客的喜好,小明列出了顾客最喜欢的 n 种花,从 1 到 n 标号.为了在门口展出更多种花,规定 ...
- 洛谷P1077 [NOIP2012普及组]摆花 [2017年四月计划 动态规划14]
P1077 摆花 题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能 ...
- noip2012普及组——质因数分解
[问题描述]已知正整数 n 是两个不同的质数的乘积,试求出较大的那个质数. [输入]输入文件名为 prime.in.输入只有一行,包含一个正整数 n. [输出]输出文件名为 prime.out.输出只 ...
- NOIP2012 普及组 寻宝
题目描述 Description 传说很遥远的藏宝楼顶层藏着诱人的宝藏.小明历尽千辛万苦终于找到传说中的这个藏宝楼,藏宝楼的门口竖着一个木板,上面写有几个大字:寻宝说明书.说明书的内容如下: 藏宝楼共 ...
- 【NOIP2012普及组】寻宝
这道实际难度入门的题做得真™要麻烦死我,由于摸不到电脑,在大脑里调了3天都翻不转!! P1076 寻宝 思路:暴力模拟(这是基础,单纯暴力据说会全部TLE)+取模优化(这样时间复杂度骤降到O(NM)) ...
- 【NOIP2012普及组】质因数分解
P1075 质因数分解 假期第一天就给一道入门难度的题写题解…… 这道题一开始就被我想复杂了:埃式筛,欧拉筛……然而开一个1e9的数组?不现实. 直到看到题解区的dalao用唯一分解定理: 算术基本定 ...
随机推荐
- web standards
http://www.w3.org/standards/ http://www.webstandards.org/learn/faq/#p213 http://www.w3.org/standards ...
- ORACLE对时间日期的处理(转)
共三部分: 第一部分:oracle sql日期比较: http://www.cnblogs.com/sopost/archive/2011/12/03/2275078.html 第二部分:Oracle ...
- Kth Smallest Element in a BST
Given a binary search tree, write a function kthSmallest to find the kth smallest element in it. Not ...
- 精通jQuery选择器
虽然jQuery上手简单,相比于其他库学习起来较为简单,但是要全面掌握,却不轻松.因为它涉及到网页开发的方方面面,提供的方法和内部变化有上千种之多.初学者常常感到,入门很方便,提高很困难.本文的目标是 ...
- 【分布式协调器】Paxos的工程实现-cocklebur简介(一)
初识分布式协调器 分布式协调器的“协调”二字让人摸不到头脑,怎么就协调了,用的着协调吗?实际上这个东西在之前就是为了提供分布式锁服务而设计的,伟大的google公司发明了chubby,雅虎随后也推出了 ...
- 20151120 - 蓝牙鼠标与 WiFi 冲突的解决办法
问题现象描述:Windows 下蓝牙鼠标移动时不连贯 电脑:Dell 2015 版 NEW XPS 15 鼠标:Microsoft Bluetooth Designer Mouse 操作系统:Wind ...
- [BZOJ2730][HNOI2012]矿场搭建(求割点)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2730 分析: 如果坍塌的点不是割点,那没什么影响,主要考虑坍塌的点是割点的情况. 显然 ...
- background-position 50% 50%是如何计算的
background-position:value1 value2 value1和value2的值可以值绝对值也可以是百分数,大部分值都很好理解,但是50% 50%这两个值是如何计算的呢? 图片水平和 ...
- eclipse的历史版本及下载
有时候我们总会遇到在需要eclipse而无法及时找到的时候, 所以那些有用的链接, 是帮助我们能够及时找到我们想要版本的额最好方式 Eclipse 3.1 IO[木卫一,伊奥] 2005 http:/ ...
- 71 fdisk-Linux 的磁盘分区表操作工具。
语法: fdisk [-l] 装置名称 选项与参数: -l :输出后面接的装置所有的分区内容.若仅有 fdisk -l 时, 则系统将会把整个系统内能够搜寻到的装置的分区均列出来. 实例 列出所有分区 ...