计数问题

纯模拟

 #include<cstdio>
#include<iostream>
using namespace std;
int main(){
int n,x;
cin>>n>>x;
int i,c=;
for(i=;i<=n;i++){
int a=i;
while(a!=){
if(a%==x)c++;
a/=;
}
}
cout<<c;
return ;
}

计数问题

表达式求值

模拟计算,扫一遍出解

 /*NOIP2013普及组t2 洛谷P1981 表达式求值*/
/**/
#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
char last;
char c;
int x=;
int a=,b=;
int sum=;
int main(){
int i,j;
bool flag=;
do{
if(cin>>c);
else{
flag=;
c='+';
}
if(c>='' && c<='')x=x*+c-'';
else{
a=x;
x=;
}
if(c=='*'){
last=;
b=(a*b)%;
}
if(c=='+'){
if(last){
a=(a*b)%;
sum=(sum+a)%;
b=;
last=;
}
else sum+=a;
} }while(flag==);
printf("%d",sum%);
return ;
}

表达式求值

小朋友的数字

线性DP

 #include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
const long long inf=;
int n,p,a[]; long long su[]={};//特征值
long long scoremx=-inf;//前排最大分数
long long dmx=-inf;
long long ans=-inf;
int sum1(){
int i,j;
long long s=;
long long mx=-inf;
for(i=;i<=n;i++){
if(s+a[i]>mx)mx=s+a[i];
su[i]=mx;
if(s+a[i]>) s+=a[i];
else s=;
}
//
for(i=;i<=n;i++){
su[i]%=p<<;
}
return ;
}
int main(){
int i,j;
scanf("%d%d",&n,&p);
for(i=;i<=n;i++)scanf("%d",&a[i]);
sum1();
long long score;
//
scoremx=su[];
score=su[];
dmx=score+su[];
//end
for(i=;i<=n;i++){
score=dmx;
if(dmx>scoremx)scoremx=dmx;
if(su[i]+score>dmx)dmx=su[i]+score;
}
printf("%d",scoremx%p);
return ;
}

小朋友的数字

车站分级

从已知的低级站向高级站连边,跑拓扑排序得出层级关系

 #include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
int n,m;
int a;//[第i趟车次的停靠站数]
int s[];//[第i趟车次停靠的站]
int mp[][]={};
int book[];
int r[],c[];
int st[];
int ans=;
void rd(){
scanf("%d%d",&n,&m);
int i,j,k;
for(i=;i<=m;i++){
memset(book,,sizeof(book));
scanf("%d",&a);
for(j=;j<=a;j++){
scanf("%d",&s[j]);
book[s[j]]=;
}
for(k=s[];k<=s[a];k++)//遍历从始发站到终点站
{
if(!book[k])
for(j=;j<=a;j++)
if(!mp[k][s[j]])//从低级连到高级可过,从高级连到低级超时
{
mp[k][s[j]]=;
r[s[j]]++;}
} }
}
int main(){
// freopen("level.in","r",stdin);
// freopen("level.out","w",stdout);
rd();
int i,j;
int top=;
memset(book,,sizeof(book));
while(){
ans++;
top=;
for(i=;i<=n;i++)
if(!r[i] && !book[i])
{
top++;
st[top]=i;
book[i]=;
} if(!top)break;
for(j=;j<=n;j++)
for(i=;i<=top;i++){
if(mp[st[i]][j]){
mp[st[i]][j]=;
r[j]--;
}
}
if(!top)break;
} printf("%d",ans-); return ;
}

[NOIP2013] 普及组的更多相关文章

  1. NOIP2013普及组 -SilverN

    T1  计数问题 题目描述 试计算在区间 1 到 n 的所有整数中,数字 x(0 ≤ x ≤ 9)共出现了多少次?例如,在 1 到 11 中,即在 1.2.3.4.5.6.7.8.9.10.11 中, ...

  2. NOIP2013普及组 T2 表达式求值

    OJ地址:洛谷P1981 CODEVS 3292 正常写法是用栈 #include<iostream> #include<algorithm> #include<cmat ...

  3. 【NOIP2013 普及组】车站分级

    [NOIP2013 普及组]车站分级 一.题目 [NOIP2013 普及组]车站分级 时间限制: 1 Sec  内存限制: 128 MB 提交: 3  解决: 0 [提交][状态][讨论版] 题目描述 ...

  4. [NOIP2013 普及组] 表达式求值

    [NOIP2013 普及组] 表达式求值 给定一个只包含加法和乘法的算术表达式,请你编程计算表达式的值. Input 一行,为需要你计算的表达式,表达式中只包含数字.加法运算符"+" ...

  5. [NOIp2013普及组]车站分级

    思路: 对于每一趟车,将区间内所有经停的站和所有未经停的站连一条边,表示前者优先级一定高于后者,然后用Kahn跑一遍拓扑排序即可.然而这样会创造大量多余的边,会TLE1个点.考虑一种优化:因为每趟车本 ...

  6. Noip2013(普及组) 车站分级

    题目描述 一条单向的铁路线上,依次有编号为 , , …, n 的 n 个火车站.每个火车站都有一个级别,最低为 级.现有若干趟车次在这条线路上行驶,每一趟都满足如下要求:如果这趟车次停靠了火车站 x, ...

  7. 洛谷——P1980 [NOIP2013 普及组] 计数问题

    题目描述 试计算在区间 11 到 nn的所有整数中,数字x(0 ≤ x ≤ 9)x(0≤x≤9)共出现了多少次?例如,在 11到1111中,即在 1,2,3,4,5,6,7,8,9,10,111,2, ...

  8. NOIP2002-2017普及组题解

    虽然普及组一般都是暴力省一,但是有一些题目还是挺难的qwq个人觉得能进TG的题目会在前面打上'*' NOIP2002(clear) #include<bits/stdc++.h> usin ...

  9. NOIP2012 普及组 T3 摆花——S.B.S.

    题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时 ...

随机推荐

  1. Xcode里-ObjC, -all_load, -force_load

    最近在做一个项目的时候,需要使用到一个第三方库,这个库的使用向导里面特别说明,在添加完该库后,需要在Xcode的Build Settings下Other Linker Flags里面加入-ObjC标志 ...

  2. 使用JavaScript打印网页指定DIV区域

    JavaScript打印函数myPrint(obj): JavaScript打印页面指定div区域原理:使用window.open()在浏览器打开一个新的页面(window), 使用 window.d ...

  3. springmvc集成shiro登录失败处理

    一般的登录流程会有:用户名不存在,密码错误,验证码错误等.. 在集成shiro后,应用程序的外部访问权限以及访问控制交给了shiro来管理. shiro提供了两个主要功能:认证(Authenticat ...

  4. sleep和wait的区别有:

    sleep和wait的区别有: 1,这两个方法来自不同的类分别是Thread和Object 2,最主要是sleep方法没有释放锁,而wait方法释放了锁,使得敏感词线程可以使用同步控制块或者方法. 3 ...

  5. Hashtable Dictionary List 谁效率更高

    一 前言 很少接触HashTable晚上回来简单看了看,然后做一些增加和移除的操作,就想和List 与 Dictionary比较下存数据与取数据的差距,然后便有了如下的一此测试, 当然我测的方法可能不 ...

  6. .Net相关

    Lucene 全文搜索 http://lucenenet.apache.org/ Memcached 分布式缓存 http://memcached.org/ selenium UI自动化测试 http ...

  7. [AJAX系列]$.post(url,[data],[fn],[type])

    概述: 通过远程HTTP POST请求载入信息 参数: url:发送请求地址 data:待发送Key/value值 callback:发送成功时回调函数 type:返回内容格式  xml  html ...

  8. 用Intent实现activity的跳转

    新建一个FirstAvtivity.java package com.zhuguangwei; import android.app.Activity;import android.content.I ...

  9. C++折半插入排序

    代码如下: #include <iostream> using namespace std; void insertSort(int a[], int n) { for(int i=1;i ...

  10. Linux_Shell_grep

    grep [选项] "搜索内容"  文件名 选项列表: -i 忽略大小写      -n 输出行号 -v 反向查找 --color=auto 搜索出的关键字用颜色显示   ll|g ...