1. 程式人生 > >17th浙大校賽 ZOJ3952 Fibonacci Sequence Chicken Edition【彙編】

17th浙大校賽 ZOJ3952 Fibonacci Sequence Chicken Edition【彙編】

題意

讓你用匯編實現求斐波那契第n項(n<=30)

思路

比賽時按正常思路想了好寫了一發WA了,然後突然想到能不能寫30個if,興沖沖寫完WA了,看了遍題目才發現有10^4字數限制,白白浪費半小時。後來實在找不到bug,現場寫了個模擬編譯器來運行了下,發現執行行數超過限制了(彙編程式碼寫太醜,吃了學校沒開彙編課的虧),但是當時時間就剩10分鐘了,根本來不及優化,不得已作罷。回去後優化了15分鐘就AC了,欲哭無淚。

AC程式碼

#include <iostream>
#include <cstdio>
#include <iomanip>
using
namespace std; int index = 1; int W = 3; void ADD() { //cerr << setw(W) << index++ << "|"; printf("c\n"); } void SUB() { //cerr << setw(W) << index++ << "|"; printf("cc\n"); } void CMP() { //cerr << setw(W) << index++ << "|"; printf
("ccc\n"); } void LOAD() { //cerr << setw(W) << setw(W) << index++ << "|"; printf("cccc\n"); } void COPY() { //cerr << setw(W) << index++ << "|"; printf("ccccc\n"); } void JUMP() { //cerr << setw(W) << index++ << "|"; printf
("cccccc\n"); } void PUSH(int n) { //cerr << setw(W) << index++ << "|"; printf("ccccccc"); while (n--)printf("c"); printf("\n"); } void MOVE(int a, int b)//*3 { PUSH(a); PUSH(b); COPY(); } void DUL(int of)//*4 { PUSH(0); MOVE(1 - 1 + of, 2 - 1 + of); } void POP(int index)//*6 { PUSH(0); MOVE(index + 1, index); ADD(); ADD(); } int main() { //freopen("code.txt","w",stdout); cerr << setfill('0'); LOAD(); DUL(1); PUSH(0); MOVE(2, 3); PUSH(1); MOVE(4, 2); POP(4); PUSH(1); CMP(); PUSH(200); JUMP(); POP(2); DUL(1); PUSH(0); MOVE(2, 3); PUSH(1); MOVE(4, 2); POP(4); PUSH(2); CMP(); PUSH(200); JUMP(); POP(2); PUSH(0); PUSH(1); PUSH(1); PUSH(0);PUSH(0);//2 //printf("______________________\n"); MOVE(4,5);MOVE(3,6);//6 ADD();//1 MOVE(3,4); MOVE(5,3);//3 PUSH(1);PUSH(0);//2 MOVE(1,7);//3 SUB();//1 MOVE(6, 1);//3 PUSH(2);//1 CMP();//1 PUSH(200);//1 JUMP();//1 PUSH(0);PUSH(1); PUSH(63);//2 JUMP();//1 return 0; }

相關推薦

17th浙大 ZOJ3952 Fibonacci Sequence Chicken Edition彙編

題意 讓你用匯編實現求斐波那契第n項(n<=30) 思路 比賽時按正常思路想了好寫了一發WA了,然後突然想到能不能寫30個if,興沖沖寫完WA了,看了遍題目才發現有10^4字數限制,白白浪費半小時。後來實在找不到bug,現場寫了個模擬編譯器來運行

2017 浙大 [Cloned]

%s std intervals val lld ace name pla date https://vjudge.net/contest/285902#overview A.Marjar Cola #include <bits/stdc++.h&g

2019浙大--G--Postman(簡單思維題)

src += std amp 畫圖 long div scanf fin 一個思維水題 題目大意為,一個郵遞員要投遞N封信,一次從郵局來回只能投遞K封。求最短的投遞總距離。需註意,最後一次投遞後無需返回郵局。 本題思路要點: 1、最後一次投遞無需返回郵局,故最後一

2019浙大--J--Extended Twin Composite Number(毒瘤水題)

img xtend ostream ima () == turn scan long 毒瘤出題人,坑了我們好久,從基本的素數篩選,到埃氏篩法,到隨機數快速素數判定,到費馬小定理,好好的水題做成了數論題。 結果答案是 2*n=n+3*n,特判1,2. 以下為毒瘤題目:

浙大、南昌邀請賽網絡賽後總結

線段 可能 spec 五個 貪心策略 快三 大小寫 xor 一個   兩個周末和隊友打了兩場比賽,感覺就是emmm,非常自閉,真的感覺做不動,和平常那種懶懶散散的訓練或者簡簡單單的題目差別太大了。浙大校賽簽到題我還想了一會,那個合數的題一開始沒看到special judge

ACM-ICPC北京賽區2017網路同步 題目5 : Cats and Fish模擬

時間限制:1000ms 單點時限:1000ms 記憶體限制:256MB 描述 There are many homeless cats in PKU campus. They are all happy because the students in

HDU 6327 2018HDU多 第三場 Random Sequence(概率期望dp+數論)

Problem I. Random Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Others) Total Submissio

2017CUIT-線上

pre 函數 fine 算法 int print fcntl images include 2017Pwnhub杯-CUIT校賽 這是CUIT第十三屆校賽啦,也是我參加的第一次校賽。 在被虐到崩潰的過程中也學到了一些東西。 這次比賽是從5.27早上十點打到5.28晚上十點,

HDU多第9場 HDU 4965Fast Matrix Calculation矩陣運算+數學小知識

stdin amp line you stream [] nbsp content ans 難度上。,,確實。。。不算難 問題是有個矩陣運算的優化 題目是說給個N*K的矩陣A給個K*N的矩陣B(1<=N<=1000 && 1=<K<

2016移動開發之Android實踐

android 學校組織的《移動互聯網應用軟件開發》技能競賽,所有參賽命題均基於 Android 4.2 版本實現,比賽推薦使用的開發環境為:ADT, JDK 1.6, Android SDK 4.1   經過了四天的培訓我們小組選擇在計算器應用 計算器能夠實現: 1. 數學四則運算 2. 實現開方元算

The New Starting --記智商被碾壓

size ron -- 習慣 tar 水題 能力 star 容易 To do List: 要提高效率 要刷些有意義的題 為提升代碼能力,先做HDU的100道水題,並且力求短時間有思路 半小時能寫出來 把貪心,DP,數據結構專題的題目補完 適當做一些di

上海五 密碼破解

queue ios 上海 fin problem 無法 label 對稱 div 密碼破解 發布時間: 2017年7月9日 18:17 最後更新: 2017年7月9日 21:04 時間限制: 1000ms 內存限制: 128M 描述 近日來勒索病毒

“盛大遊戲杯”第15屆上海大學程序設計聯賽夏季暨上海高校金馬五 C

一行 spa sizeof 聯賽 sin pre row span -s 時間過得好快啊,SHU計算機學院又有新的一批小朋友們進來了。2016級的同學想必也是非常喜歡計算機學院的,於是院長想測試一下大家對計算機的喜愛程度(院長大人別查我水表)。 院長給大家一行由大寫字母

“盛大遊戲杯”第15屆上海大學程序設計聯賽夏季暨上海高校金馬五 I

mat tail for 我們 大學 一行 ace 一個 ostream 有一天,空和白很無聊,決定玩盛大遊戲,考慮到兩個人玩,他們隨便掏了一個遊戲出來:在一個n?m 的棋盤上,首先把史蒂芬妮·多拉放在左上角(1,1) 的位置。每次一個人可以將她往下,往右,往右下丟

“盛大遊戲杯”第15屆上海大學程序設計聯賽夏季暨上海高校金馬五 G

class ati text sin 生命力 但是 %d nod cti 最近,盛大計劃開發一款手遊,以下是簡化版。系統和我方各有n 頭怪獸,每一頭怪獸都有生命值和攻擊力,並且當怪獸A攻擊怪獸B,如果怪獸B的生命值高於怪獸A的攻擊力,則怪獸B的生命力減少A的攻擊力的數

“盛大遊戲杯”第15屆上海大學程序設計聯賽夏季暨上海高校金馬五 F

con text mes namespace view spa label 子序列 cti 如果一個序列有奇數個正整數組成,不妨令此序列為a 1 ,a 2 ,a 3 ,...,a 2?k+1 (0<=k ),並且a 1 ,a 2 ...a k+1 是一個

NBUT J Alex’s Foolish Function(分塊+延遲標記)

not unit itl 標記 ccf 一次 pan -s foo Problem J: Alex’s Foolish Function Time Limit: 8 Sec Memory Limit: 128 MB Submit: 18 Solve

2017 多 第二場

n+1 easy and align acc gre const over color 1003.Maximum Sequence Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K

hdu_6047: Maximum Sequence (2017 多第二場 1003)貪心

code color pri -- scan typedef lan bsp style 題目鏈接 可以貪心寫,先把b數組按從小到大的順序排個序,根據b[i]的值來產生a[n+i] 借助一個c數組,c[i]記錄,j從i到n,a[j]-j的最大值,再加上一個實時更新的變量ma

使用循環解決斐波那契數列Fibonacci sequence

log class 兔子 斐波那契數 知識 多少 oba enc 傳遞 1 # encoding:utf-8 2 ‘‘‘ 3 Created on 2017年8月7日 4 題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子, 5 小兔子長到第三個月