惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
博客园 - 【当耐特】
Engineering at Meta
Engineering at Meta
IT之家
IT之家
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件
美团技术团队
S
SegmentFault 最新的问题
The GitHub Blog
The GitHub Blog
Martin Fowler
Martin Fowler
Recorded Future
Recorded Future
H
Help Net Security
aimingoo的专栏
aimingoo的专栏
Y
Y Combinator Blog
博客园_首页
A
About on SuperTechFans
MongoDB | Blog
MongoDB | Blog
阮一峰的网络日志
阮一峰的网络日志
V
Visual Studio Blog
D
DataBreaches.Net
人人都是产品经理
人人都是产品经理
大猫的无限游戏
大猫的无限游戏
B
Blog
The Register - Security
The Register - Security
I
InfoQ
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
雷峰网
雷峰网
Last Week in AI
Last Week in AI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
Blog — PlanetScale
Blog — PlanetScale
N
Netflix TechBlog - Medium
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
有赞技术团队
有赞技术团队
Stack Overflow Blog
Stack Overflow Blog
Jina AI
Jina AI
Security Archives - TechRepublic
Security Archives - TechRepublic
Hacker News - Newest:
Hacker News - Newest: "LLM"
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
W
WeLiveSecurity
Latest news
Latest news
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 叶小钗
L
Lohrmann on Cybersecurity
博客园 - Franky
Recent Commits to openclaw:main
Recent Commits to openclaw:main
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO

Sublime Text

Sublime Text 也出了国内特供?挂马版本? - V2EX Sublime Text 4 如何格式化 JSON 和 XML - V2EX Sublime Text 支持右边栏了。 - V2EX Sublime Text 4 没人吐槽一下中文字形问题吗? Sublime 弹窗 - V2EX sublime text 如何隐藏标题栏? 这是什么主题(sublime text) - V2EX sublime 如何关闭插件弹出来的 quick panel?? 比如 sqltool 这款插件会在下方弹出执行结果,类似一个编辑器,只读而已 sublime text4 刚刚发布,在主力机上更新了下 但是出现了一个怪现象:空行,按 tab 键只能缩进一次,再按 tab 没反应了 真是奇了怪,百度谷歌均未查到有效方案 - V2EX Sublime Text 4 稳定版发布了 - V2EX Sublime Text 4 正式版發布 - V2EX sublime 用的人还多么? - V2EX sublimeText3 的 emmet 插件的问题? - V2EX translate_tabs_to_spaces 是什么功能?怎样设置,怎样操作会有怎样的效果? - V2EX SublimeREPL 输出换行很怪异 升级 big sur 后 sublime text 3 的代码高亮没了,有遇到这种情况的吗 - V2EX mac 使用 sublime text 用了 Material-Theme.sublime-theme 主题,然后 vim 模式光标都看不清,怎么改好 - V2EX sublime 已经一年不更新了 - V2EX sublimetext 的 ctrl+上下 不能增减数字了 - V2EX 记一次 sublime text 的 [锟斤拷] 免费用了两年,终于在拿到实习工资后补票正版 Sublime Text~ - V2EX Sublime Text 4 (Dev Build 4050) Changelog - V2EX Sublime 中如何快速切换 Python 解释器 SublimeText 插件 SFTP 购买后可以在多台电脑上使用吗 - V2EX Darcula 主题 for sublime 3 - V2EX Sublime 写 Vue 有没有提示补全的插件 sublime text 3 如何将光标设置为下划线样式? - V2EX 求一个 sublime 的 Markdown 插件 - V2EX sublime 如何使宏定义区域高亮 - V2EX packagecontrol.io 挂了一天了 - V2EX sublime3 输入 python3 内置函数不能自动补全括号 请问 sublime 中怎么设置在同一个 windows 打开多个项目? - V2EX sublime text 的设置同步问题 - V2EX sublime 运行过程中不小心关闭了控制台,怎么恢复? - V2EX Sublime 3 的“用户设置”自动删除注释,大家有遇到?好像这问题存在好多年了…… - V2EX 如何取消 Soda 的 color scheme 的背景高亮 - V2EX 算得上是最小而美的一个 Sublime 插件了吧... sublime 下输入中文的问题 SublimeCodeIntel 有提示,但输入字符就消失了,怎么回事? - V2EX [疑难求助] sublime text3 emmet 插件 自动补全 html 文档标签缩进不规范的问题折磨到我心力交瘁 Sublime Text 3 中利用 CTags 自动补全自定义函数 - V2EX 请问有用过 sublime html-css-js prettify 插件的老哥吗?我格式化 html 基本没效果 - V2EX windows 下,在 sublimetext 里,用管理员身份打开项目根目录的 cmd - V2EX 如何使 sublime 按回车之后自动插入时间戳 Sublime Text 3:如何在替换文本界面 Tab 切换焦点到替框后默认全选替换框内的文字? - V2EX 引起 sublime cpu 高(macos 系统)的居然是这货 sublime text 这么多版本过去了,毛病还是没改啊.... - V2EX sublime3 如何记住打开的目录 - V2EX
sublime 坑点? - V2EX
long1 · 2018-11-27 · via Sublime Text

最近做 os 家庭作业,sublime Text3 编辑 c++程序,遇到了输入读不完就退出了运行了。

只是用了指针来实现?求大佬指点小弟。

#include <bits/stdc++.h>
#include <stdio.h>
#include <stdlib.h>
#define mp make_pair
#define fi first
#define se second
#define llt long long 
using namespace std;

char s[10][1100];
const int WORKSIZE=32;
typedef pair<int,int> pii;
pii WorkBlock[WORKSIZE];

int mixnTime;
int startTime=0;
int useSize=0;
struct PBlock{
	int id;
	int priority;
	int time;
	int blocksize;
	struct PBlock* nxt;
};


struct PBlock* readying;

void add(struct PBlock* tmp){
	// 队列为空
	if(readying == NULL){
		readying = tmp;
		return ;
	}

	//队首优先级小于 tmp
	if((readying->priority)<(tmp->priority)){
		tmp->nxt = readying;
		readying = tmp;
		return;
	}

	struct PBlock* pre=readying;
	struct PBlock* suf=pre->nxt;

	//cout<<(pre->priority)<<" ";
	while(suf!=NULL){
		if((suf->priority)<(tmp->priority))
			break;
		pre = suf;
		suf = pre->nxt;
		//cout<<(pre->priority)<<" ";
	}

	tmp->nxt = pre->nxt;
	pre->nxt = tmp;
	//cout<<pre->priority<<endl;
	return ;
}

void Print_Line(){
	for(int i=0;i<170-3;++i)
		printf("%c","-\n"[i==170-4]);
}

void Print(){
	printf("Time: %d\n",startTime );

	Print_Line();
	printf("| %s |",s[0]);
	for(int i=0;i<WORKSIZE;++i)
		printf(" %2d |",i);
	printf("\n");

	Print_Line();
	printf("| %s |",s[1]);
	for(int i=0;i<WORKSIZE;++i)
		if(WorkBlock[i].se>0)printf(" %2d |",WorkBlock[i].fi);
		else printf(" %2c |",' ');
	printf("\n");

	Print_Line();
}

void Running(){

	if((readying==NULL)||WORKSIZE-useSize<(readying->blocksize)){
		int costTime=mixnTime;
		mixnTime=0x3f3f3f3f;
		for(int i=0;i<WORKSIZE;++i){
			if(WorkBlock[i].se==0) continue;
			WorkBlock[i].se-=costTime;
			if(WorkBlock[i].se==0) --useSize;
			else mixnTime=min(mixnTime,WorkBlock[i].se);
		}
		//cout<<mixnTime<<endl;
		Print();
		startTime+=costTime;
		return;
	}

	for(int i=0;i<WORKSIZE;++i){
		if((readying->blocksize)==0)break;

		if(WorkBlock[i].se>0)continue;
		WorkBlock[i].fi=readying->id;
		WorkBlock[i].se=readying->time;
		++useSize;
		--(readying->blocksize);
	}

	mixnTime=min(mixnTime,readying->time);
	struct PBlock* tmp=readying->nxt;
	free(readying);
	readying=tmp;
}
int main(){

	scanf("%s",s[0]);
	scanf("%s",s[1]);
	//freopen("in.txt","r",stdin);
	memset(WorkBlock,0,sizeof WorkBlock);

	int BlockSize;

	cin>>BlockSize;
	for(int i=0;i<BlockSize;++i){
		struct PBlock* tmp = (struct PBlock*) malloc(sizeof (struct PBlock*));
		tmp->nxt = NULL;   
		scanf("%d%d%d%d",&(tmp->id),&(tmp->priority),&(tmp->time),&(tmp->blocksize));
		//cout<<(tmp->id)<<" "<<(tmp->priority)<<" "<<(tmp->time)<<endl;
		add(tmp);
	}
	//cout<<1<<endl;
	while((useSize>0)||(readying!=NULL))
	    Running();

	return 0;
}