zoj 1088 System Overload

原创 2012年03月31日 12:22:07
#include "iostream"
#include "stdio.h"
#include "memory.h"
using namespace std;

int citys[160];
int temp[160];

bool solve(int n, int m)
{
	int r = 1;
	int i, j;
	citys[1] = 0;
	for (i = 2, j = 1; r <= n - 2; i = i % n + 1, j = j % m + 1)
	{
		while (citys[i] == 0)
			i = i % n + 1;
		if (j % m == 0)
		{	
			if (i == 2)
				return false;
			citys[i] = 0;
			j = 0;
			r = r + 1;
		}
	}
	if (citys[2] != 0)
		return true;
	else
		return false;
}

int main()
{
	int n, i;
	while (cin >> n && n)
	{
		memset(citys, 0, sizeof(citys));
		for (i = 0; i <= n; i++)
			citys[i] = i;
		memcpy(temp, citys, sizeof(citys));
		int m;
		for (m = 1; ; m++)
		{
			memcpy(citys, temp, sizeof(citys));
			if (solve(n, m))
				break;
		}
		cout << m << endl;
	}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

ZOJ--1088:System Overload(约瑟夫环问题)

System Overload Time Limit: 10 Seconds      Memory Limit: 32768 KB Recently you must have experi...
  • yf224
  • yf224
  • 2017-06-21 21:11
  • 85

剑指Offer 面试题45:圆圈中最后剩下的数字(约瑟夫环问题,ZOJ 1088:System Overload类似)题解

剑指Offer 面试题45:圆圈中最后剩下的数字(约瑟夫环问题) 原书题目:0, 1, … , n-1 这n个数字排成一个圈圈,从数字0开始每次从圆圏里删除第m个数字。求出这个圈圈里剩下的最后...

ZOJ 1088 System Overload

题目大意: 题目链接 注释代码: 无注释代码: 加速算法:

zoj--1088--System Overload

这道题开始一看还真没有什么思路,

ZOJ 1088 System Overload

典型的Joseph问题…… 由于数据范围小,直接暴力就可以解决了…… 用到了链表的数据结构…… 时间:90毫秒。 #include "stdio.h" #include "string.h" ...

zoj-1088-System Overload

点击打开题目 #include #include #include #include #include #include #include #include #include #include ...

System Overload

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1088Recently you must have experienced ...

ZOJ-1088

约瑟环,纯模拟硬搞的,据说有方法可以直接算,表示不会。。提交了两次,中间把步数优化了一下,原先是直接用m去数,其实可以用m%total步数去数,但这里容易出错,当m%total=0时,要处理一下,用t...

杭电1088&zoj1099 Write a simple HTML Browser

Write a simple HTML Browser Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (...
  • z8110
  • z8110
  • 2015-11-03 14:29
  • 186

zoj1088(模拟/约瑟夫环)

题目链接:点击链接 方法一:模拟 #include #include int next[150];//保存大楼编号 bool cut[150];//切断连接的大楼的编号 int main() { ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)