USACO2008 Roads Around The Farm /// queue oj23321
2024-08-29 21:02:59
题目大意:
N (1 ≤ N ≤ 1,000,000,000)牛群在遇到岔路时,若能分为恰好相差 K (1 ≤ K ≤ 1000)的两路,则持续分裂(假设会一直遇到岔路),否则停止开始吃草。
Input
* Line 1: Two space-separated integers: N and K
Output
* Line 1: A single integer representing the number of groups of grazing cows
Sample Input
6 2
Sample Output
3
Hint
SAMPLE INPUT DETAILS:
There are 6 cows and the difference in group sizes is 2.
SAMPLE OUTPUT DETAILS:
There are 3 final groups (with 2, 1, and 3 cows in them).
6
/ \
2 4
/ \
1 3
一开始直接随着分裂记录结果 结果一直WA
看了题解才恍然 其实遍历完所有的结果
记录下 不符合继续分裂条件 的结果个数其实就是最后的答案
#include <bits/stdc++.h>
using namespace std; int main()
{
int n,k,cnt;
queue <int> q;
scanf("%d%d",&n,&k); while(!q.empty()) q.pop();
cnt=;
q.push(n); while(!q.empty())
{
int m=q.front();
if( m>k && (m-k)%== )
{
q.push((m-k)/);
q.push((m-k)/+k);
}
else cnt++;
q.pop();
}
printf("%d\n",cnt); return ;
}
最新文章
- UWP 下拉刷新控件(PullToRefreshControl)
- YbSoftwareFactory 代码生成插件【二十二】:CMS基础功能的实现
- 少见的sql
- mldn android
- hdu-5680 zxa and set(水题)
- 深入理解ThreadLocal(一)
- 18:字符串-char型字符串
- 《算法实战策略》-chaper19-队列、栈和双端队列
- OC和JS的交互
- JAVA字符串缓存器全部方法功能及其作用
- Python虚拟环境的安装与使用
- myeclipse编码问题
- android 显示大图模糊问题
- python标签值标准化到[0-(#class-1)]
- Spark算子之aggregateByKey详解
- 透过面试题来说说Promise
- Dapper 嵌套对象查询
- JavaWeb总结(十五)
- 在VS2005编程中,有的时候DataGridView数据源有几个表的联合查询,而系统又有限制为一个表,怎么办?
- LoadRunner监控Linux的三种方法