锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
http://www.szxkd.com/a/infos/2010/0728/42578.html
榪戞棩錛岃鑰呰幏鎮(zhèn)夛紝涓璧蜂互鏁欒偛涓哄熷彛鐨勪紶閿鍥綋錛屽湪闀挎槬閫愭笎鎵╁ぇ銆?span class=Apple-converted-space>
銆銆鍖椾含璧㈤紟鏁欒偛鏈烘瀯闀挎槬鍒嗗叕鍙革紝瀹為檯涓婃槸闀挎槬璧㈤紟鏁欒偛鍏徃錛岃鍏徃鎸傜潃鍖椾含鐨勫悕鍙鳳紝鍦ㄩ暱鏄ュ悇澶ч珮鏍★紝浠ュぇ閲忕殑“楂樿柂姹傝亴”涓鴻瀵鹼紝璇卞瀛︾敓涓浜虹即綰充細(xì)鍛樿垂錛?480鍏冿紝浼?xì)鍛樿垂缂淳U蟲棤紼庢敹鍙戠エ錛屽彧鏈夋敹鎹傜幇鍦ㄨ鍥㈤槦鍚哥撼鐨勪細(xì)鍛樻暟閫愭笎鎵╁ぇ錛岄璁¤揪涓夊崈浜恒?span class=Apple-converted-space>
銆銆鐪肩潄鐫佺湅鐫榪欎釜浼犻攢鍥㈤槦鍦ㄩ暱鏄ュ悇澶ч珮鏍℃粙鐢熻敁寤訛紝璁拌呰繘鍏ヨ鍥㈤槦榪涜浜嗘殫璁胯皟鏌ュ緱鐭ヤ竴浜涙儏鍐碉細(xì)
銆銆涓銆佽鍏徃鍦ㄦ病鏈夋彁渚涘疄璐ㄦт笟鍔℃垨鏈嶅姟鎯呭喌涓嬶紝浠ュ彂灞曚漢鍛樻暟閲忎負(fù)涓昏緇忔祹鏉ユ簮錛?span class=Apple-converted-space>
銆銆浜屻佷互瀹d紶“楂樿柂鑱屽満”鎴栨壙璇?#8220;鎺ㄨ崘瀛︾敓榪涘叆500寮轟紒涓氬伐浣?#8221;涓鴻楗碉紝閲囧彇闈炴硶闆嗕細(xì)錛屽閥绔嬪悕鐩垨浠ヤ駭鍝佸彉鐩告敹鍙栦笉絳変環(huán)銆佷笉瀹㈣鐨勮垂鐢ㄨ繘琛岄潪娉曢泦璧勶紱 http:///
銆銆涓夈佷互鎻愪緵姹傝亴闈㈣瘯鏈嶅姟錛?00寮哄叕鍙窰R涓庡ぇ瀛︾敓闈㈠闈紝浼?xì)鍛樻湁鏈轰細(xì)鑾峰緱鍘婚娓梾娓稿Q屾墜鏈猴紝鐢?shù)鑴戜负骞屽瓙锛屼粠浜嬮泦璧勮瘓楠椊{夎繚娉曠姱緗殑鍟嗕笟嬈鴻瘓錛岀敤嬈洪獥鎵嬫鐢氳嚦涓嶆柇媧楄剳璇卞榪涜浜ゆ槗鐨勬暃璐㈣涓猴紱
銆銆1銆佽鍏徃鍙風(fēng)О緇欏鐢熷瀛愪滑鎺ㄨ崘500寮哄伐浣溿傚叾瀹炰笉鏄紝鏄瀵煎墠鎻愶紝鑰屾墍璋撶殑宸ヤ綔錛屾槸緇欎粬浠満鏋勫仛鍏嶈垂鐨勫疄涔?fàn)鐢熴?span class=Apple-converted-space>
銆銆2銆佽鍏徃浠昏鑰佸笀鍏ㄩ儴涓嶆槸姝h澶у姣曚笟鐨勶紝鑰屾槸涓浜涙病鏈夋瑙勫鍘嗚儗鏅殑涓漢銆傚叾涓彿縐板叏鐞冭亴涓氳鍒掑笀鐨勶紝鍏跺疄鍙槸鍖栧甯堬紙鏁欑ぜ浠艦璞★級錛屾垨鑰呮湁鐨勫彿縐板叏鐞冭亴涓氫紒涓氶珮綰х鐞嗕漢錛屽叾瀹炴槸涓嶇煡鍚嶅崟浣嶆煇浜哄姏緇忕悊銆?span class=Apple-converted-space>
銆銆3銆佷互楂樿柂鏁欒偛涓鴻瀵肩偣錛屽獎鍝嶅湪鏍″鐢熶滑姝e父涓婅錛岀敋鑷崇繕璇撅紝涓嶅弬鍔犳櫄鑷範(fàn)絳夛紝鎷間簡鍛戒篃瑕佸幓涓婁粬浠殑璇俱?span class=Apple-converted-space>
4銆佹墍鏈夋姤鍚嶈垂鍏ㄦ棤紼庢敹鍙戠エ銆?span class=Apple-converted-space>
銆銆5銆佽鍥㈤槦鎵鏈夊伐浣滀漢錛屽叏閮ㄤ互鍥㈤槦绔炰簤涓烘ā寮忥細(xì)浜掔浉姣旇緝姣忎竴鏈熻紼嬨佸摢涓緇?#8220;蹇芥?zhèn)?#8221;鐨勫鐢熸渶澶氾紝騫朵粠涓彁鎴愶紝璋佸拷鎮(zhèn)犵殑瀛︾敓鏈澶氾紝璋佺殑鎻愭垚鏈楂樸?span class=Apple-converted-space>
銆銆6銆佸鏋滀氦浜嗕細(xì)鍛樿垂錛屽氨緇濆涓嶅彲鑳藉啀閫璐廣?span class=Apple-converted-space>
銆銆7銆佹垜浠繕鏈夊垢浠庤鏈烘瀯涓鍚嶅憳宸ュ彛涓緱鐭ワ細(xì)璇ユ満鏋勭粍緇囪呭鍛樺伐鐨勬壙璇烘槸錛氫簤鍙?012騫達(dá)紝鎴戜滑鍦ㄧ撼鏂揪鍏嬩笂甯傘傝繕鎵胯錛氬勾搴曞皢榪涘啗鍖椾含錛屼紭縐鐨勫憳宸ワ紝灝嗚繘鍐涘悇澶х渷甯傚綋浠g悊澶勬昏礋璐d漢銆傝屽疄闄呮槸錛岃鏈烘瀯鍙滄棤杈滅殑鍛樺伐錛屼粠鏃╀笂7鐐瑰幓涓婄彮錛屾櫄涓?0鐐規(guī)墠涓嬬彮銆備竴涓湀鍙湁1澶╃殑浼戞伅鏃ャ備簲涓鍔犵彮鍏徃鏍規(guī)湰涓嶇粰鍔犵彮璐廣備竴涓湀宸ヨ祫鍙湁1000鍏冦傝屽憳宸ョ殑鎻愭垚錛屽叕鍙鎬篃鏈夊悇縐嶅熷彛鎵d笅銆傚紑濮嬭鐨勬槸鎸烘縺鍔變漢錛岀幇鍦虹殑瀛╁瓙浠兘琚劅鏌撲簡銆傚緢鏄庢樉錛岄兘鏄簺澶т竴澶т簩鐨勫瀛愶紝鍒氳繘澶у銆傚鑱屽満鏍規(guī)湰涓嶄簡瑙o紝浠栦滑璁茬殑榪欎簺鑰佸鐨勪笢瑗匡紝瀵瑰ぇ涓澶т簩鐨勫瀛愬氨璧峰埌涓涓瀵肩殑鏁堟灉銆?span class=Apple-converted-space>
銆 鍏徃姣忎竴嬈℃墍璋撶殑鍏嶈垂瀹f垬涔嬪悗錛屽鐢熶滑灝辮琚瀵煎弬鍔犱粬浠殑浼?xì)鍛樿瘎〃嬨傛瘡涓涓細(xì)鍛樹氦璐逛竴鍗冨銆傚彿縐板彲浠ョ粰瀛╁瓙浠帹鑽?00寮哄伐浣滃疄涔?fàn)鏈轰細(xì)锛屾垨鑰呯粰瀛╁瓙浠帹鑽愬伐浣滅瓑絳夈傚疄闄呬笂鏄湁鎺ㄨ崘宸ヤ綔浜嗭細(xì)緇欎粬浠耽榧庡綋鍏嶈垂鐨勫姵鍔ㄥ姏銆?span class=Apple-converted-space>
銆銆褰撲粬浠璁茬粨鏉熷悗闂粬浠殑鑰佸笀錛氫負(fù)浠涔堟葷粰澶т竴澶т簩瀛╁瓙璁茶錛屼篃緇欏ぇ涓夊ぇ鍥涚殑瀛╁瓙璁茶鑱屽満鍢涖傝佸笀鐨勫洖絳旇璁拌呮劅鍒板緢鍚冩儕錛氬ぇ涓夊ぇ鍥涚殑涓嶅ソ媧楄剳銆?span class=Apple-converted-space>
銆銆闅忓悗錛岃鑰呯數(shù)璇濊嚦璇ュ叕鍙鎬簡瑙e叾鐩稿叧鎯呭喌錛屽綋璁拌呴棶璧瘋鍏徃鐨勭粡钀ヨ寖鍥存槸浠涔堟椂錛屽叕鍙稿唴閮ㄤ漢鍛樺嵈絳斾笉涓婃潵錛屽茍涓斿惁璁ゆ湁浼犻攢鎬ц川鐨勬椿鍔ㄣ?span class=Apple-converted-space>
銆銆璁拌呰仈緋誨埌璇ュ叕鍙告硶浜轟唬琛紝娉曚漢涓鍙e惁璁ゅ叕鍙哥殑浼犻攢鎬ц川錛屽茍璇存湁鍚勫ぇ瀛︾殑鑱樹功涓鴻瘉錛岃岃鑰呮墍瑙佺殑璇ュ叕鍙哥殑钀ヤ笟鎵х収騫朵笉瑙勮寖錛屾病鏈夋敞鏄庡叕鍙哥粡钀ヨ寖鍥淬?span class=Apple-converted-space>
銆銆姝ゅ悗錛岃鑰呭啀鎯充簡瑙d竴浜涚浉鍏蟲儏鍐碉紝騫惰鏌ヨ鐩稿叧鏀惰垂璁稿彲璇佸強鏀惰垂鏍囧噯鏃訛紝鍏徃瀵規(guī)柟涓嶆帴鐢?shù)璇濆Q屽叕鍙告硶浜轟篃鎷掓帴鍥為伩銆?span class=Apple-converted-space>
銆銆闀挎槬璧㈤紟鏁欒偛鍏徃闀挎槬璧㈤紟鏁欒偛鍏徃 鍘熸槸浼犻攢鏈烘瀯!
]]>
]]>
import java.util.Vector;
public class VectorIterator implements Iterator{
private Vector v;
private int currentIndex=0;
public VectorIterator(){
}
public VectorIterator(Vector v){
this.v=v;
}
public boolean hasNext() {
if(this.currentIndex<this.v.size()){
System.out.println("current index is : "+this.currentIndex);
return true;
}else{
System.out.println("out of the bound ");
}
return false;
}
public Object next() {
return this.v.get(this.currentIndex++);
}
public void remove() {
this.v.remove(this.currentIndex);
}
public static void main(String[] args){
Vector v=new Vector();
v.add(new String("aaa"));
v.add(new String("bbb"));
v.add(new String("ccc"));
//System.out.println(v);
Iterator iter=new VectorIterator(v);
while(iter.hasNext()){
String str=(String)iter.next();
System.out.println(str);
}
}
}
]]>
quickPassQueue.add();鍦ㄦ湯灝炬坊鍔犲厓绱?br />----婕旂ず紼嬪簭-----
import java.util.*;
import java.io.*;
public class test
{
Vector v = new Vector();
public void testMethod(){
v.add("a");
v.add("b");
v.add("c");
System.out.println("\n鍘熸潵鐨剉ecotr");
for(int i=0;i<v.size();i++){
System.out.println("\n"+" index is: "+ i + " element is: " +v.get(i));
}
v.remove(0);
System.out.println("\n鍘繪帀涓涓獀ector涓涓涓厓绱?);
for(int i=0;i<v.size();i++){
System.out.println("\n"+" index is: "+ i + " element is: " +v.get(i));
}
}
public static void main(String[] args)
{
test t = new test();
t.testMethod();
System.out.println("Hello World!");
}
}
-----------------鎺掑簭紼嬪簭------------------------------
import java.util.*;
class MyCompare implements Comparator //瀹炵幇Comparator錛屽畾涔夎嚜宸辯殑姣旇緝鏂規(guī)硶
{
public int compare(Object o1, Object o2) {
Elem e1=(Elem)o1;
Elem e2=(Elem)o2;
if(e1.get() > e2.get())//榪欐牱姣旇緝鏄檷搴?濡傛灉鎶?1鏀規(guī)垚1灝辨槸鍗囧簭.
{
return -1;
}
else if(e1.get()<e2.get())
{
return 1;
}
else
{
return 0;
}
}
}
class Elem {
private int iVal;
public Elem(int i) {
this.iVal = i;
}
public int get() {
return this.iVal;
}
}
public class Vector1 {
public static void main(String[] args) {
List v = new Vector();
v.add(new Elem(1));
v.add(new Elem(22));
v.add(new Elem(3));
v.add(new Elem(14));
Comparator ct = new MyCompare();
Collections.sort(v, ct);
for (int i = 0; i < v.size(); i++)
System.out.println(((Elem) v.get(i)).get());
}
}
|
import java.util.*; |
銆銆鍦ㄦ湰渚嬩腑錛屾垜浠彲浠ョ湅鍒頒竴涓畝鍗曠殑紼嬪簭錛屽畠鎸変袱涓笉鍚岀殑鏃墮棿闂撮殧錛?/span>1 縐掑拰 3 縐掞級鍦ㄥ睆騫曚笂鏄劇ず褰撳墠鏃墮棿銆傝繖鏄氳繃鍒涘緩涓や釜鏂扮嚎紼嬫潵瀹屾垚鐨勶紝鍖呮嫭 main() 鍏變笁涓嚎紼嬨備絾鏄紝鍥犱負(fù)鏈夋椂瑕佷綔涓虹嚎紼嬭繍琛岀殑綾誨彲鑳藉凡緇忔槸鏌愪釜綾誨眰嬈$殑涓閮ㄥ垎錛屾墍浠ュ氨涓嶈兘鍐嶆寜榪欑鏈哄埗鍒涘緩綰跨▼銆傝櫧鐒跺湪鍚屼竴涓被涓彲浠ュ疄鐜頒換鎰忔暟閲忕殑鎺ュ彛錛屼絾 Java 緙栫▼璇█鍙厑璁鎬竴涓被鏈変竴涓埗綾匯傚悓鏃訛紝鏌愪簺紼嬪簭鍛橀伩鍏嶄粠 Thread 綾誨鍑猴紝鍥犱負(fù)瀹冨己鍔犱簡綾誨眰嬈°傚浜庤繖縐嶆儏鍐碉紝灝辮 runnable 鎺ュ彛銆?/span>
銆銆Runnable 鎺ュ彛
銆銆姝ゆ帴鍙e彧鏈変竴涓嚱鏁幫紝run()錛屾鍑芥暟蹇呴』鐢卞疄鐜頒簡姝ゆ帴鍙g殑綾誨疄鐜般備絾鏄紝灝辮繍琛岃繖涓被鑰岃錛屽叾璇箟涓庡墠涓涓ず渚嬬◢鏈変笉鍚屻傛垜浠彲浠ョ敤 runnable 鎺ュ彛鏀瑰啓鍓嶄竴涓ず渚嬨傦紙涓嶅悓鐨勯儴鍒嗙敤榛戜綋琛ㄧず銆傦級
銆銆鍒涘緩涓や釜鏂扮嚎紼嬭屼笉寮哄姞綾誨眰嬈?/span>
|
import java.util.*; |
銆銆璇鋒敞鎰忥紝褰撲嬌鐢?/span> runnable 鎺ュ彛鏃訛紝鎮(zhèn)ㄤ笉鑳界洿鎺ュ垱寤烘墍闇綾葷殑瀵硅薄騫惰繍琛屽畠錛涘繀欏諱粠 Thread 綾葷殑涓涓疄渚嬪唴閮ㄨ繍琛屽畠銆傝澶氱▼搴忓憳鏇村枩嬈?/span> runnable 鎺ュ彛錛屽洜涓轟粠 Thread 綾葷戶鎵夸細(xì)寮哄姞綾誨眰嬈°?/span>
銆銆synchronized 鍏抽敭瀛?/span>
銆銆鍒扮洰鍓嶄負(fù)姝紝鎴戜滑鐪嬪埌鐨勭ず渚嬮兘鍙槸浠ラ潪甯哥畝鍗曠殑鏂瑰紡鏉ュ埄鐢ㄧ嚎紼嬨傚彧鏈夋渶灝忕殑鏁版嵁嫻侊紝鑰屼笖涓嶄細(xì)鍑虹幇涓や釜綰跨▼璁塊棶鍚屼竴涓璞$殑鎯呭喌銆備絾鏄紝鍦ㄥぇ澶氭暟鏈夌敤鐨勭▼搴忎腑錛岀嚎紼嬩箣闂撮氬父鏈変俊鎭祦銆傝瘯鑰冭檻涓涓噾铻嶅簲鐢ㄧ▼搴忥紝瀹冩湁涓涓?/span> Account 瀵硅薄錛屽涓嬩緥涓墍紺猴細(xì)
銆銆涓涓摱琛屼腑鐨勫欏規(guī)椿鍔?/span>
|
public class Account { |
銆銆鍦ㄦ浠g爜鏍蜂緥涓綔浼忕潃涓涓敊璇傚鏋滄綾葷敤浜庡崟綰跨▼搴旂敤紼嬪簭錛屼笉浼?xì)鏈変恢M綍闂銆備絾鏄紝鍦ㄥ綰跨▼搴旂敤紼嬪簭鐨勬儏鍐典腑錛屼笉鍚岀殑綰跨▼灝辨湁鍙兘鍚屾椂璁塊棶鍚屼竴涓?/span> Account 瀵硅薄錛屾瘮濡傝涓涓仈鍚堝笎鎴風(fēng)殑鎵鏈夎呭湪涓嶅悓鐨?/span> ATM 涓婂悓鏃惰繘琛岃闂傚湪榪欑鎯呭喌涓嬶紝瀛樺叆鍜屾敮鍑哄氨鍙兘浠ヨ繖鏍風(fēng)殑鏂瑰紡鍙戠敓錛氫竴涓簨鍔¤鍙︿竴涓簨鍔¤鐩栥傝繖縐嶆儏鍐靛皢鏄伨闅炬х殑銆備絾鏄紝Java 緙栫▼璇█鎻愪緵浜嗕竴縐嶇畝鍗曠殑鏈哄埗鏉ラ槻姝㈠彂鐢熻繖縐嶈鐩栥傛瘡涓璞″湪榪愯鏃墮兘鏈変竴涓叧鑱旂殑閿併傝繖涓攣鍙氳繃涓烘柟娉曟坊鍔犲叧閿瓧 synchronized 鏉ヨ幏寰椼傝繖鏍鳳紝淇榪囩殑 Account 瀵硅薄錛堝涓嬫墍紺猴級灝嗕笉浼?xì)閬彈鍍忔暟鎹崯鍧彉q欐牱鐨勯敊璇細(xì)
銆銆瀵逛竴涓摱琛屼腑鐨勫欏規(guī)椿鍔ㄨ繘琛屽悓姝ュ鐞?/span>
|
public class Account { |
銆銆deposit() 鍜?/span> withdraw() 鍑芥暟閮介渶瑕佽繖涓攣鏉ヨ繘琛屾搷浣滐紝鎵浠ュ綋涓涓嚱鏁拌繍琛屾椂錛屽彟涓涓嚱鏁板氨琚樆濉炪傝娉ㄦ剰錛?/span> checkBalance() 鏈綔鏇存敼錛屽畠涓ユ牸鏄竴涓鍑芥暟銆傚洜涓?/span> checkBalance() 鏈綔鍚屾澶勭悊錛屾墍浠ヤ換浣曞叾浠栨柟娉曢兘涓嶄細(xì)闃誨瀹冿紝瀹冧篃涓嶄細(xì)闃誨浠諱綍鍏朵粬鏂規(guī)硶錛屼笉綆¢偅浜涙柟娉曟槸鍚﹁繘琛屼簡鍚屾澶勭悊
|
棰樼洰澶ф剰:
鍘熸枃鍦板潃錛?a >http://hi.baidu.com/flymouse/blog/item/fd1378f05c7ff7c37931aac3.html璇誨叆涓涓猲*n鐨勬暟緇?姣斿 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 浠庨噷闈換鎰忔埅鍙栦竴涓煩闃?浣垮緱鐭╅樀鎵鍖呭惈鐨勬暟瀛楃殑鍜屾渶澶? 鎴彇鍑烘潵鐨勭煩闃?鍜屼負(fù)15 9 2 -4 1 -1 8 --------------------------------------------------------- POJ 1050 鎴戠殑瑙i鎶ュ憡錛?br> 榪欎釜棰樼洰寰堢粡鍏哥殑璇達(dá)紝O錛圢^3錛夌殑DP銆?br> 棣栧厛鍋朵滑鑰冨療榪欐牱鐨勯鐩紝綆鍖栫増錛?br> 宸茬煡涓鍒楁暟錛屾眰浠繪剰榪炵畫鑻ュ共涓暟鍜岀殑鏈澶у箋?br> SAMPLE錛?nbsp;3 2 -6 2 -1 7 鍘熸暟3 2 -6 2 -1 7 澶勭悊3 5 -1 2 1 8 鍥犱負(fù)鏄繛緇嫢騫蹭釜鑷劧鏁扮殑鍜岋紝閭d箞錛屽墠闈㈢殑鏌愪釜鏁板瓧鍙栦笌涓嶅彇鐨勬潯浠跺湪浜庯細(xì)浠ュ墠闈㈣繖涓暟瀛椾負(fù)緇撳熬鐨勮繛緇暟鐨勫拰鏈澶у兼槸鍚﹀ぇ浜?錛屽鏋滃ぇ浜?錛岄偅涔堣繖涓暟瀛楀繀鐒惰浼?xì)鍑虹幇鍦ㄥ寘鎷暟瀛楃殑搴忓垪涓Q屽惁鍒欐棤娉曞仛鍒版渶澶с?br> 鎵浠ワ紝鏄劇劧銆傚鐞嗙殑鍘熷垯鏄痬axn[i]=max{0,maxn[i-1]}+a[i]; 鐢變簬鏃犻』璁板綍浣嶇疆銆傛墍浠ワ紝鍙互鐩存帴鐢ㄤ竴涓彉閲弒um浠f浛maxn鏁扮粍銆侽(n)鐨勬壂鎻忓嵆鍙?br> 鍗曞垪鏁板瓧鐨勯棶棰樿В鍐充簡錛屼笅闈㈡垜浠冨療澶氬垪鏁板瓧鐨?br> sample: 0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 鎴戜滑鍙互灝嗗鍒楁暟瀛楄漿鎹㈡垚鍗曞垪鏁板瓧鏉ュ仛錛?nbsp;鍙互榪欐牱璁炬兂錛岀粨鏋滄槸涓涓暱鏂瑰艦錛屾垜浠妸浠栧帇鎵侊紝浣垮緱瀹戒負(fù)1銆?br> 寮曞叆杈呭姪鏁扮粍st,st[i][j]浠h〃絎琲鍒椾粠絎?琛屽紑濮嬬殑鏁板瓧绱姞鍒扮j琛岀殑鍊箋傞偅涔堬紝鎴戜滑姣忔鍘嬫墎鐨勬椂鍊欙紝灝卞彲浠ョ敤st[i][j]-st[i][k-1]鏉ヨ〃紺虹i鍒椾粠絎琸涓暟瀛楃瘡鍔犲埌絎琷涓暟瀛楃殑鍊箋傝揪鍒板帇緙╃殑鏁堟灉銆傜劧鍚庣敤涓婇潰鍗曞垪鏁板瓧鐨勬柟娉曟潵鍋氥傜畻娉曟椂闂村鏉傚害O (N^3) Source Problem Id:1050 User Id:galaxy Memory:112K Time:0MS Language:G++ Result:Accepted /* Name:POJ 1050 Copyright: flymouse@galaxy Author:chenlei Date: 15-02-06 07:36 Description: DP O(N^3) */ #include <stdio.h> #include <string.h> #define mt 101 int main() { int a[mt][mt]; int st[mt][mt]; int p,k,n,i,j,sum,maxn; //freopen("in.txt","r",stdin); scanf("%d",&n); for (i=1;i<=n;i++) for (j=1;j<=n;j++) scanf("%d",&a[i][j]); memset(st,0,sizeof(st)); for (i=1;i<=n;i++) for (j=1;j<=n;j++) st[i][j]=st[i][j-1]+a[j][i]; maxn=0; for (i=1;i<=n;i++) { for (j=i;j<=n;j++) { p=st[1][j]-st[1][i-1]; sum=p; for (k=2;k<=n;k++) { if (sum>0) sum+=st[k][j]-st[k][i-1]; else sum=st[k][j]-st[k][i-1]; if (sum>p) p=sum; } if (p>maxn) maxn=p; } } printf("%d\n",maxn); return 0; |
int ELFhash(char *key)
{
unsigned long h=0;
while(*key)
{
h=(h<<4)+*key++;
unsigned long g=h&0Xf0000000L;
if(g) h^=g>>24;
h&=~g;
}
return h%MOD;
}
void insert(char a[],char b[],int w)
{
if(!hash[w].boo)
{
hash[w].boo=true;
memcpy(hash[w].akey,a,sizeof(hash[w].akey));
memcpy(hash[w].bkey,b,sizeof(hash[w].bkey));
}
else
insert(a,b,w+1);
}
int find(char b[],int w)
{
if(hash[w].boo && strcmp(hash[w].bkey,b)==0)
{
printf("%s\n",hash[w].akey);
return 1;
}
else
{
if(!hash[w].boo)
return 0;
else
return find(b,w+1);
}
}
int main()
{
char a[12],b[12];
scanf("%c",&a[0]);
while(scanf("%s%s",a+1,b))
{
getchar();
int w=ELFhash(b);
insert(a,b,w);
scanf("%c",&a[0]);
if(a[0]=='\n')
break;
}
while(scanf("%s",&b)==1)
{
int w=ELFhash(b);
if(find(b,w)==0)
printf("eh\n");
}
return 0;
}
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/cugbliang/archive/2008/05/30/2497539.aspx
int main()
{
int n,i,tmp,left,ans;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<PRIME;i++)
a[i].next=-1;
hashl=PRIME;
left=0;
ans=1;
scanf("%d",&b[0]);
tmp=hash(b[0]);
a[tmp].num++;
for(i=1;i<n;i++)
{
scanf("%d",&b[i]);
tmp=hash(b[i]);
a[tmp].num++;
if(a[tmp].num<=1) //鎻掑叆鐨勬暟瀛椾互鍓嶆病鏈夊嚭鐜拌繃錛岃偗瀹氬寘鍚湪ans閲?br> {
ans=i-left+1;
continue;
}
while(1) //瀵瑰簲浜巌f鐨別lse,鍗砤[tmp].num>=2錛屽嵆鎻掑叆鐨勬暟瀛椾互鍓嶅嚭鐜拌繃銆傚鏋滄槸鍦╨eft浣嶇疆鍑虹幇榪囷紝鍒檒eft鍙崇Щ錛涘鏋滄槸鍦?#8220;left鍙寵竟錛宨宸﹁竟”鍑虹幇榪囷紝鍒欒鏄庣洰鍓嶇殑i-left+1鍜宎ns閮藉彲浠ュ寘鎷叏閮ㄧ殑鐭ヨ瘑鐐癸紝褰撶劧鍙栧皬鐨勪簡錛?nbsp;
{
tmp=hash(b[left]);
if(a[tmp].num<=1)
break;
a[tmp].num--;
left++;
}
if(ans>i-left+1)
ans=i-left+1;
}
printf("%d\n",ans);
}
return 0;
}
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/cugbliang/archive/2008/06/01/2497376.aspx
緇間笂鎵榪?姝ら婊¤凍鏈浼樺瓙緇撴瀯鎬ц川,鍥犳鍙互鐢ㄥ姩鎬佽鍒掔畻娉曟潵姹傝В.
寤虹珛閫掑綊鍏崇郴
璁緈[i][j]琛ㄧずA[i,j]鐨勮綆楃粨鏋?
褰搃=j鏃?琛ㄧず鍙湁涓鍫嗙煶澶?涓嶈兘鍚堝茍,鍥犳寰楀垎涓洪浂,鎵浠[i,j]=0;
褰搃<j鏃?鍙埄鐢ㄦ渶浼樺瓙緇撴瀯鎬ц川鏉ヨ綆梞[i][j],
m[i,j]=m[i,k]+m[k+1,j]+totalValue(i,j)(i<=k<j)
鍙敤鐭╅樀榪炰箻鐨勬渶浼樿綆楁搴忛棶棰樻潵姹傝В榪欓.鍙夌敤鑷《鍚戜笅鐨勫蹇樺綍綆楁硶鎴栨槸鑷簳鍚戜笂鐨勫姩鎬佽鍒掔畻娉?
浠ヤ笅浠g爜浣跨敤鍔ㄦ佽鍒掔畻娉?
void MatrixChain(int *p,int n,int **m,int flag) //鐭╅樀榪炰箻綆楁硶
{
for(int i=0;i<n;i++)
m[i][i]=0;
for(int r=2;r<n;r++)
for(int i=0;i<n-r+1;i++)
{
int j=i+r-1;
int temp=totalValue(i,j,p);
m[i][j]=m[i+1][j]+temp;
for(int k=i+1;k<j;k++)
{
int t=m[i][k]+m[k+1][j]+temp;
if(!flag) //姹傛渶灝忓緱鍒?
{
if(t<m[i][j])
m[i][j]=t;
}
else //姹傛渶澶у緱鍒?
if(t>m[i][j])
m[i][j]=t;
}
}
}
MatrixChain(inputNum,2*n-1,m,0); //璁$畻鏈灝忓緱鍒?
int resultMin=m[0][n-1];
for(i=1;i<=n-1;i++)
if(resultMin>m[i][n-1+i])
resultMin=m[i][n-1+i];
MatrixChain(inputNum,2*n-1,m,1); //璁$畻鏈澶у緱鍒?
int resultMax=m[0][n-1];
for(i=1;i<=n-1;i++)
if(resultMax<m[i][n-1+i])
resultMax=m[i][n-1+i];
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/lyflower/archive/2008/03/05/2150239.aspx
涓錛庤瘯棰?br> 鍦ㄤ竴涓洯褰㈡搷鍦虹殑鍥涘懆鎽嗘斁N鍫嗙煶瀛愶紙N≤100錛夛紝鐜拌灝嗙煶瀛愭湁嬈″簭鍦板悎騫舵垚涓鍫嗐傝瀹?br> 姣忔鍙兘閫夌浉閭?cè)潥勪袱鍫嗗悎迤堟垚鏂扮殑涓鍫嗭紝騫跺皢鏂扮殑涓鍫嗙殑鐭沖瓙鏁幫紝璁頒負(fù)璇ユ鍚堝茍鐨勫緱鍒嗐?br> 緙栦竴紼嬪簭錛岀敱鏂囦歡璇誨叆鍫嗘暟N鍙婃瘡鍫嗙殑鐭沖瓙鏁幫紙≤錛掞紣錛夛紝
鈶犻夋嫨涓縐嶅悎騫剁煶瀛愮殑鏂規(guī)錛屼嬌寰楀仛N錛?嬈″悎騫訛紝寰楀垎鐨勬誨拰鏈灝忥紱
鈶¢夋嫨涓縐嶅悎騫剁煶瀛愮殑鏂規(guī)錛屼嬌寰楀仛N錛?嬈″悎騫訛紝寰楀垎鐨勬誨拰鏈澶с?br> 渚嬪錛屾墍紺虹殑錛斿爢鐭沖瓙錛屾瘡鍫嗙煶瀛愭暟錛堜粠鏈涓婇潰鐨勪竴鍫嗘暟璧鳳紝欏烘椂閽堟暟錛変緷
嬈′負(fù)錛旓紩錛欙紨銆傚垯錛撴鍚堝茍寰楀垎鎬誨拰鏈灝忕殑鏂規(guī)錛氾紭錛嬶紤錛擄紜錛掞紥錛濓紨錛?br> 寰楀垎鏈澶х殑鏂規(guī)涓猴細(xì)錛戯紨錛嬶紤錛橈紜錛掞紥錛濓紩錛?br> 杈撳叆鏁版嵁錛?br> 鏂囦歡鍚嶇敱閿洏杈撳叆錛岃鏂囦歡鍐呭涓猴細(xì)
絎竴琛屼負(fù)鐭沖瓙鍫嗘暟N錛?br> 絎簩琛屼負(fù)姣忓爢鐨勭煶瀛愭暟錛屾瘡涓や釜鏁頒箣闂寸敤涓涓┖鏍肩鍒嗛殧銆?br> 杈撳嚭鏁版嵁錛?br> 杈撳嚭鏂囦歡鍚嶄負(fù)output.txt
浠庣1鑷崇N琛屼負(fù)寰楀垎鏈灝忕殑鍚堝茍鏂規(guī)銆傜N錛?琛屾槸絀鴻銆備粠絎琋錛?琛屽埌絎?N錛?琛屾槸寰?br> 鍒嗘渶澶у悎騫舵柟妗堛?br> 姣忕鍚堝茍鏂規(guī)鐢∟琛岃〃紺猴紝鍏朵腑絎琲琛岋紙1≤i≤N錛夎〃紺虹i 嬈″悎騫跺墠鍚勫爢鐨勭煶瀛愭暟錛堜緷
欏烘椂閽堟搴忚緭鍑猴紝鍝竴鍫嗗厛杈撳嚭鍧囧彲錛夈?瑕佹眰灝嗗緟鍚堝茍鐨勪袱鍫嗙煶瀛愭暟浠ョ浉搴旂殑璐熸暟琛ㄧず錛屼互渚挎爣璇嗐?/font>
杈撳叆杈撳嚭鑼冧緥錛?br> 杈撳叆鏂囦歡鍐呭錛?br> 錛?br> 錛?錛曪紮 錛?br> 杈撳嚭鏂囦歡鍐呭錛?br> 錛嶏紨 錛?錛?錛嶏紨
錛嶏紭錛嶏紩 錛?br> 錛嶏紤錛?錛嶏紮
錛掞紥
錛?錛嶏紩 錛嶏紮 錛?br> 錛?錛嶏紤錛?錛嶏紨
錛嶏紨錛嶏紤錛?br> 錛掞紥
浜岋紟綆楁硶鍒嗘瀽
绔炶禌涓鏁伴夋墜閮戒笉綰﹁屽悓鍦伴噰鐢ㄤ簡灝藉彲鑳介艱繎鐩爣鐨勮椽蹇冩硶鏉ラ愭鍚堝茍錛氫粠鏈涓婇潰
鐨勪竴鍫嗗紑濮嬶紝娌塊『鏃墮拡鏂瑰悜鎺掓垚涓涓簭鍒椼?絎竴嬈¢夊緱鍒嗘渶灝忥紙鏈澶э級鐨勭浉閭諱袱鍫嗗悎騫訛紝
褰㈡垚鏂扮殑涓鍫嗭紱鎺ヤ笅鏉ワ紝鍦∟錛?鍫嗕腑閫夊緱鍒嗘渶灝忥紙鏈澶э級鐨勭浉閭諱袱鍫嗗悎騫?#8230;…錛屼緷嬈$被鎺紝
鐩磋嚦鎵鏈夌煶瀛愮粡N錛?嬈″悎騫跺悗褰㈡垚涓鍫嗐?/font>
渚嬪鏈夛紪鍫嗙煶瀛愶紝姣忓爢鐭沖瓙鏁幫紙浠庢渶涓婇潰涓鍫嗘暟璧鳳紝欏烘椂閽堟暟錛変緷嬈′負(fù)錛?錛旓紪 錛?錛?錛?
瑕佹眰閫夋嫨涓縐嶅悎騫剁煶瀛愮殑鏂規(guī)錛屼嬌寰楀仛錛曟鍚堝茍錛屽緱鍒嗙殑鎬誨拰鏈灝忋?br> 鎸夌収璐績娉曪紝鍚堝茍鐨勮繃紼嬪涓嬶細(xì)
姣忔鍚堝茍寰楀垎
絎竴嬈″悎騫?錛?錛?錛?錛?錛?錛?->錛?br> 絎簩嬈″悎騫?錛?錛?錛?錛?錛?nbsp; ->錛?br> 絎笁嬈″悎騫?錛?錛?錛?錛?nbsp; ->錛?br> 絎洓嬈″悎騫?錛?錛?錛?nbsp; ->錛戯紩
絎簲嬈″悎騫?錛戯紩 錛?nbsp; ->錛掞紨
24
鎬誨緱鍒嗭紳錛曪紜錛欙紜錛欙紜錛戯紩錛嬶紥錛旓紳錛栵紥
浣嗘槸褰撴垜浠粩緇嗙悽紓ㄥ悗錛屽彲寰楀嚭鍙︿竴涓悎騫剁煶瀛愮殑鏂規(guī)錛?br> 姣忔鍚堝茍寰楀垎
絎竴嬈″悎騫?錛?錛?錛?錛?錛?錛?nbsp; ->錛?br> 絎簩嬈″悎騫?錛?錛?錛?錛?錛?nbsp; ->錛戯紦
絎笁嬈″悎騫?錛戯紦 錛?錛?錛?nbsp; ->錛?br> 絎洓嬈″悎騫?錛戯紦 錛?錛?nbsp; ->錛戯紤
絎簲嬈″悎騫?錛戯紦 錛戯紤 ->錛掞紨
24
鎬誨緱鍒嗭紳錛楋紜錛栵紜錛戯紤錛嬶紤錛擄紜錛掞紨錛濓紪錛?br> 鏄劇劧錛屽悗鑰呮瘮璐績娉曞緱鍑虹殑鍚堝茍鏂規(guī)鏇翠紭銆?棰樼洰涓殑紺轟緥鏁呮剰閫犳垚涓涓椽蹇冩硶瑙i鐨?br> 鍋囧儚錛岃浣胯鑰呰繘鍏?#8220;闄烽槺”銆備負(fù)浜嗗府鍔╄鑰呬粠榪欎釜“闄烽槺”閲岃蛋鍑烘潵錛?鎴戜滑鍏堟潵鏄庣‘涓涓棶棰橈細(xì)
錛戯紟鏈浣?jīng)_悎騫惰繃紼嬬鍚堟渶浣?jīng)_師鐞?br> 浣跨敤璐績娉曡嚦鎵浠ュ彲鑳藉嚭閿欙紝
鏄洜涓烘瘡涓嬈¢夋嫨寰楀垎鏈灝忥紙鏈澶э級鐨勭浉閭諱袱鍫嗗悎騫訛紝涓嶄竴瀹氫繚璇佷綑涓嬬殑鍚堝茍榪囩▼鑳藉鑷存渶浼樿В銆傝仾鏄庣殑璇昏呴┈涓婁細(xì)鎯沖埌涓縐嶇悊鎯崇殑鍋囪錛氬鏋淣錛?嬈″悎騫剁殑鍏ㄥ眬鏈浼樿В鍖呭惈浜嗘瘡涓嬈″悎騫剁殑瀛愰棶棰樼殑鏈浼樿В錛岄偅涔堢粡榪欐牱鐨凬錛?嬈″悎騫跺悗鐨勫緱鍒嗘誨拰蹇呯劧鏄渶浼樼殑銆?br> 渚嬪涓婁緥涓浜旀鍚堝茍鐭沖瓙鏁板垎鍒負(fù)錛戯紦鍜岋紤錛戠殑鐩擱偦涓ゅ爢銆?
榪欎袱鍫嗙煶澶村垎鍒敱鏈鍒濈殑絎紤錛岋紥錛岋紦鍫嗭紙鐭沖ご鏁板垎鍒負(fù)錛擄紝錛旓紝錛栵級鍜岀錛旓紝錛曪紝錛栧爢錛堢煶澶存暟鍒嗗埆涓猴紩錛岋紨錛岋紥錛夌粡錛旀鍚堝茍鍚庡艦鎴愮殑銆備簬鏄棶棰樺張褰掔粨涓哄浣曚嬌寰楄繖涓や釜瀛愬簭鍒楃殑N錛?
嬈″悎騫剁殑寰楀垎鎬誨拰鏈浼樸備負(fù)浜嗗疄鐜拌繖涓鐩爣錛屾垜浠皢絎紤涓簭鍒楀張涓鍒嗕負(fù)浜岋細(xì)絎紤銆侊紥鍫嗘瀯鎴愬瓙搴忓垪錛戯紝
絎紦鍫嗕負(fù)瀛愬簭鍒楋紥銆傜涓嬈″悎騫跺瓙搴忓垪錛戜腑鐨勪袱鍫嗭紝寰楀垎錛楋紱
絎簩嬈″啀灝嗕箣涓庡瓙搴忓垪錛掔殑涓鍫嗗悎騫訛紝寰楀垎錛戯紦銆傛樉鐒跺浜庣錛戜釜瀛愬簭鍒楁潵璇達(dá)紝榪欐牱鐨勫悎騫舵柟妗堟槸鏈浼樼殑銆傚悓鏍鳳紝鎴戜滑灝嗙錛掍釜瀛愬簭鍒椾篃涓鍒嗕負(fù)浜岋紱絎紨鍫嗕負(fù)瀛愬簭鍒楋紤錛岀錛曪紝錛栧爢鏋勬垚瀛愬簭鍒楋紥銆傜涓夋鍚堝茍瀛愬簭鍒楋紥涓殑錛掑爢錛屽緱鍒嗭紪錛涚鍥涙鍐嶅皢涔嬩笌瀛愬簭鍒楋紤涓殑涓鍫嗗悎騫訛紝寰楀垎錛戯紦銆傛樉鐒跺浜庣浜屼釜瀛愬簭鍒楁潵璇達(dá)紝榪欐牱鐨勫悎騫舵柟妗堜篃鏄渶浼樼殑銆?
鐢辨寰楀嚭涓涓粨璁衡攢鈹錛栧爢鐭沖瓙緇?br> 榪囪繖鏍風(fēng)殑錛曟鍚堝茍鍚庯紝寰楀垎鐨勬誨拰鏈灝忋傛垜浠妸姣忎竴嬈″悎騫跺垝鍒嗕負(fù)闃舵錛屽綋鍓嶉樁孌典腑璁$畻鍑虹殑寰楀垎鍜屼綔涓虹姸鎬侊紝
濡備綍鍦ㄥ墠涓嬈″悎騫剁殑鍩虹涓婂畾涔変竴涓兘浣跨洰鍓嶅緱鍒嗘誨拰鏈澶х殑鍚堝茍鏂規(guī)浣滀負(fù)涓嬈″喅絳栥傚緢鏄劇劧錛屾煇闃舵鐨勭姸鎬佺粰瀹氬悗錛屽垯浠ュ悗鍚勯樁孌電殑鍐崇瓥涓嶅彈榪欓樁孌典互鍓嶅悇孌電姸鎬佺殑褰卞搷銆?
榪欑鏃犲悗鏁堟х殑鎬ц川絎︽渶浣?jīng)_師鐞嗭紝鍥犳鍙互鐢ㄥ姩鎬佽鍒掔殑綆楁硶姹傝В銆?/font>
錛掞紟鍔ㄦ佽鍒掔殑鏂瑰悜鍜屽垵鍊肩殑璁懼畾
閲囩敤鍔ㄦ佽鍒掓眰瑙g殑鍏抽敭鏄‘瀹氭墍鏈夌煶瀛愬爢瀛愬簭鍒楃殑鏈浣?jīng)_悎騫舵柟妗堛?榪欎簺鐭沖瓙鍫嗗瓙搴忓垪鍖呮嫭錛?br> 锝?jīng)绗Q戝爢銆佺錛掑爢锝濄侊經(jīng)絎紥鍫嗐佺錛撳爢锝濄?#8230;…銆侊經(jīng)絎琋鍫嗐佺錛戝爢锝濓紱
锝?jīng)绗Q戝爢銆佺錛掑爢銆佺錛撳爢锝濄侊經(jīng)絎紥鍫嗐佺錛撳爢銆佺錛斿爢锝濄?#8230;…銆侊經(jīng)絎琋鍫嗐佺錛戝爢銆佺錛掑爢锝濓紱……
锝?jīng)绗Q戝爢銆?#8230;…銆佺N鍫嗭綕锝?jīng)绗Q戝爢銆?#8230;…銆佺N鍫嗐佺錛戝爢锝?#8230;…锝?jīng)绗琋鍫嗐佺錛戝爢銆?#8230;…銆佺N錛嶏紤鍫嗭綕
涓轟簡渚夸簬榪愮畻錛屾垜浠敤銆攊錛宩銆曡〃紺轟竴涓粠絎琲鍫嗘暟璧鳳紝欏烘椂閽堟暟j鍫嗘椂鐨勫瓙搴忓垪锝?jīng)绗琲鍫嗐佺i錛嬶紤鍫嗐?#8230;…銆佺錛坕錛媕錛?錛塵od n鍫嗭綕
瀹冪殑鏈浣?jīng)_悎騫舵柟妗堝寘鎷袱涓俊鎭細(xì)
鈶犲湪璇ュ瓙搴忓垪鐨勫悇鍫嗙煶瀛愬悎騫舵垚涓鍫嗙殑榪囩▼涓紝鍚勬鍚堝茍寰楀垎鐨勬誨拰錛?br> 鈶″艦鎴愭渶浣?jīng)_緱鍒嗗拰鐨勫瓙搴忓垪錛戝拰瀛愬簭鍒楋紥銆傜敱浜庝袱涓瓙搴忓垪鏄浉閭?cè)潥勫Q?鍥犳鍙渶璁頒綇瀛愬簭鍒楋紤鐨勫爢鏁幫紱
璁?br> f銆攊錛宩銆曗攢鈹灝嗗瓙搴忓垪銆攊錛宩銆曚腑鐨刯鍫嗙煶瀛愬悎騫舵垚涓鍫嗙殑鏈浣?jīng)_緱鍒嗗拰錛?br> c銆攊錛宩銆曗攢鈹灝嗐攊錛宩銆曚竴鍒嗕負(fù)浜岋紝鍏朵腑瀛愬簭鍒楋紤鐨勫爢鏁幫紱
錛堬紤≤i≤N錛岋紤≤j≤N錛?br> 鏄劇劧錛屽姣忎竴鍫嗙煶瀛愭潵璇達(dá)紝瀹冪殑
f銆攊錛岋紤銆曪紳錛?
c銆攊錛岋紤銆曪紳錛?錛堬紤≤i≤N錛?br> 瀵逛簬瀛愬簭鍒椼攊錛宩銆曟潵璇達(dá)紝鑻ユ眰鏈灝忓緱鍒嗘誨拰錛宖銆攊錛宩銆曠殑鍒濆鍊間負(fù)∞錛?鑻ユ眰鏈澶у緱鍒嗘誨拰錛宖銆攊錛宩銆曠殑鍒濆鍊間負(fù)錛愩傦紙錛?#8804;i≤N錛岋紥≤j≤N錛夈?br> 鍔ㄦ佽鍒掔殑鏂瑰悜鏄『鎺?鍗充粠涓婅屼笅)銆傚厛鑰冭檻鍚簩鍫嗙煶瀛愮殑N涓瓙搴忓垪錛堝悇瀛愬簭鍒楀垎鍒粠絎紤鍫嗐佺錛掑爢銆?#8230;…銆佺N鍫嗘暟璧鳳紝欏烘椂閽堟暟錛掑爢錛夌殑鍚堝茍鏂規(guī)
f銆旓紤錛岋紥銆曪紝f銆旓紥錛岋紥銆曪紝……錛宖銆擭錛岋紥銆?br> c銆旓紤錛岋紥銆曪紝c銆旓紥錛岋紥銆曪紝……錛宑銆擭錛岋紥銆?br> 鐒跺悗鑰冭檻鍚笁鍫嗙煶瀛愮殑錛釜瀛愬簭鍒楋紙鍚勫瓙搴忓垪鍒嗗埆浠庣錛戝爢銆佺錛掑爢銆?#8230;…銆佺錛爢鏁拌搗錛岄『鏃墮拡鏁幫紦鍫嗭級鐨勫悎騫舵柟妗?br> f銆旓紤錛岋紦銆曪紝f銆旓紥錛岋紦銆曪紝……錛宖銆擭錛岋紦銆?br> c銆旓紤錛岋紦銆曪紝c銆旓紥錛岋紦銆曪紝……錛宑銆擭錛岋紦銆?br> ……
渚濇綾繪帹錛岀洿鑷寵冭檻浜嗗惈N鍫嗙煶瀛愮殑N涓瓙搴忓垪錛堝悇瀛愬簭鍒楀垎鍒粠絎紤鍫嗐佺錛掑爢銆?……銆佺N鍫嗘暟璧鳳紝欏烘椂閽堟暟N鍫嗭級鐨勫悎騫舵柟妗?br> f銆旓紤錛孨銆曪紝f銆旓紥錛孨銆曪紝……錛宖銆擭錛孨銆?br> c銆旓紤錛孨銆曪紝c銆旓紥錛孨銆曪紝……錛宑銆擭錛孨銆?br> 鏈鍚庯紝鍦ㄥ瓙搴忓垪銆旓紤錛孨銆曪紝銆旓紥錛孨銆曪紝……錛屻擭錛孨銆曚腑錛岄夋嫨寰楀垎鎬誨拰錛坒鍊鹼級鏈灝忥紙鎴栨渶澶э級鐨勪竴涓瓙搴忓垪銆攊錛孨銆曪紙錛?#8804;i≤N錛夛紝鐢辨鍑哄彂鍊掓帹鍚堝茍榪囩▼銆?/font>
錛擄紟鍔ㄦ佽鍒掓柟紼嬪拰鍊掓帹鍚堝茍榪囩▼
瀵瑰瓙搴忓垪銆攊錛宩銆曟渶鍚庝竴嬈″悎騫訛紝鍏跺緱鍒嗕負(fù)絎琲鍫嗘暟璧鳳紝欏烘椂閽堟暟j鍫嗙殑鐭沖瓙鎬繪暟t銆傝鍚堝茍鐨勪袱鍫嗙煶瀛愭槸鐢卞瓙搴忓垪銆攊錛宬銆曞拰銆旓紙i錛媖錛嶏紤錛塵od
n錛嬶紤錛宩錛峩銆曪紙錛?#8804;k≤j錛嶏紤錛夌粡鏈夐檺嬈″悎騫跺艦鎴愮殑銆備負(fù)浜嗘眰鍑烘渶浣?jīng)_悎騫舵柟妗堜腑鐨刱鍊鹼紝鎴戜滑瀹氫箟涓涓姩鎬佽鍒掓柟紼嬶細(xì)
褰撴眰鏈澶у緱鍒嗘誨拰鏃?br> f銆攊錛宩銆曪紳max锝?jīng)f銆攊錛宬銆曪紜f銆攛錛宩-k銆曪紜t锝?br> 錛?#8804;k≤j錛嶏紤
c銆攊錛宩銆曪紳k鈹?f銆攊錛宩銆曪紳f銆攊錛宬銆曪紜f銆攛錛宩-k銆曪紜t
錛堬紥≤锝?#8804;锝庯紝錛?#8804;锝?#8804;锝庯級
褰撴眰鏈灝忓緱鍒嗘誨拰鏃?br> f銆攊錛宩銆曪紳min锝?jīng)f銆攊錛宬銆曪紜f銆攛錛宩錛峩銆曪紜t锝?br> 錛?#8804;k≤j錛嶏紤
c銆攊錛宩銆曪紳k鈹?f銆攊錛宩銆曪紳f銆攊錛宬銆曪紜f銆攛錛宩-k銆曪紜t
錛堬紥≤锝?#8804;锝庯紝錛?#8804;锝?#8804;锝庯級
鍏朵腑x錛濓紙i錛媖錛嶏紤錛塵odn錛嬶紤錛屽嵆絎琲鍫嗘暟璧鳳紝欏烘椂閽堟暟k錛嬶紤鍫嗙殑鍫嗗簭鍙楓?/font>
渚嬪瀵逛笂闈緥瀛愪腑鐨勶紪(錛?錛?錛?錛?錛?錛?)鍫嗙煶瀛愶紝鎸夊姩鎬佽鍒掓柟紼嬮『鎺ㄦ渶灝忓緱鍒嗗拰銆?渚濇寰楀嚭鍚簩鍫嗙煶瀛愮殑錛栦釜瀛愬簭鍒楃殑鍚堝茍鏂規(guī)
f銆旓紤錛岋紥銆曪紳錛?f銆旓紥錛岋紥銆曪紳錛戯紣 f銆旓紦 錛岋紥銆曪紳錛戯紤
c銆旓紤錛岋紥銆曪紳錛?c銆旓紥錛岋紥銆曪紳錛?c銆旓紦錛岋紥銆曪紳錛?br> f銆旓紨錛岋紥銆曪紳錛?f銆旓紩錛岋紥銆曪紳錛?f銆旓紪錛岋紥銆曪紳錛?br> c銆旓紨錛岋紥銆曪紳錛?c銆旓紩錛?錛掋曪紳錛?c銆旓紪錛岋紥銆曪紳錛?/font>
鍚笁鍫嗙煶瀛愮殑錛?錛?錛?錛?錛?錛?錛?)涓瓙搴忓垪鐨勫悎騫舵柟妗?br> f銆旓紤錛岋紦銆曪紳錛掞紣 f銆旓紥錛岋紦銆曪紳錛掞紩 f銆旓紦錛岋紦銆曪紳錛掞紨
c銆旓紤錛岋紦銆曪紳錛?c銆旓紥錛岋紦銆曪紳錛?c銆旓紦錛岋紦銆曪紳錛?br> f銆旓紨錛岋紦銆曪紳錛戯紬 f銆旓紩錛岋紦銆曪紳錛戯紨 f銆旓紪錛岋紦銆曪紳錛戯紨
c銆旓紨錛岋紦銆曪紳錛?c銆旓紩錛岋紦銆曪紳錛?c銆旓紪錛岋紦銆曪紳錛?/font>
鍚洓鍫嗙煶瀛愮殑錛?錛?錛?錛?錛?錛?錛?)涓瓙搴忓垪鐨勫悎騫舵柟妗?br> f銆旓紤錛岋紨銆曪紳錛擄紪 f銆旓紥錛岋紨銆曪紳錛擄紭 f銆旓紦錛岋紨銆曪紳錛擄紨
c銆旓紤錛岋紨銆曪紳錛?c銆旓紥錛岋紨銆曪紳錛?c銆旓紦錛岋紨銆曪紳錛?br> f銆旓紨錛岋紨銆曪紳錛掞紭 f銆旓紩錛岋紨銆曪紳錛掞紪 f銆旓紪錛岋紨銆曪紳錛掞紮
c銆旓紨錛岋紨銆曪紳錛?c銆旓紩錛岋紨銆曪紳錛?c銆旓紪錛岋紨銆曪紳錛?/font>
鍚簲鍫嗙煶瀛愮殑錛?錛?錛?錛?錛?錛?錛?)涓瓙搴忓垪鐨勫悎騫舵柟妗?br> f銆旓紤錛岋紩銆曪紳錛曪紤 f銆旓紥錛岋紩銆曪紳錛旓紭 f銆旓紦錛岋紩銆曪紳錛旓紩
c銆旓紤錛岋紩銆曪紳錛?c銆旓紥錛岋紩銆曪紳錛?c銆旓紦錛岋紩銆曪紳錛?
f銆旓紨錛岋紩銆曪紳錛旓紤 f銆旓紩錛岋紩銆曪紳錛旓紦 f銆旓紪錛岋紩銆曪紳錛旓紩
c銆旓紨錛岋紩銆曪紳錛?c銆旓紩錛岋紩銆曪紳錛?c銆旓紪錛岋紩銆曪紳錛?/font>
鍚叚鍫嗙煶瀛愮殑錛?錛?錛?錛?錛?錛?錛?)涓瓙搴忓垪鐨勫悎騫舵柟妗?br> f銆旓紤錛岋紪銆曪紳錛栵紤 f銆旓紥錛岋紪銆曪紳錛栵紥 f銆旓紦錛岋紪銆曪紳錛栵紤
c銆旓紤錛岋紪銆曪紳錛?c銆旓紥錛岋紪銆曪紳錛?c銆旓紦錛岋紪銆曪紳錛?
f銆旓紨錛岋紪銆曪紳錛栵紤 f銆旓紩錛岋紪銆曪紳錛栵紤 f銆旓紪錛岋紪銆曪紳錛栵紥
c銆旓紨錛岋紪銆曪紳錛?c銆旓紩錛岋紪銆曪紳錛?c銆旓紪錛岋紪銆曪紳錛?/font>
f銆旓紤錛岋紪銆曟槸f銆旓紤錛岋紪銆曪紝锝嗐旓紥錛岋紪銆曪紝……f銆旓紪錛岋紪銆曚腑鐨勬渶灝忓鹼紝琛ㄦ槑鏈灝忓緱鍒嗗拰鏄敱搴忓垪銆旓紤錛岋紪銆曠粡錛曟鍚堝茍寰楀嚭鐨勩傛垜浠粠榪欎釜搴忓垪鍑哄彂錛?
鎸変笅榪版柟娉曞掓帹鍚堝茍榪囩▼錛?br> 鐢眂銆旓紤錛岋紪銆曪紳錛撳彲鐭ワ紝絎紩嬈″悎騫剁殑涓ゅ爢鐭沖瓙鍒嗗埆鐢卞瓙搴忓垪銆旓紤錛岋紦銆曞拰瀛愬簭鍒椼旓紨錛?銆曠粡錛旀鍚堝茍鍚庡緱鍑恒傚叾涓璫銆旓紤錛岋紦銆曪紳錛掑彲鐭ョ敱瀛愬簭鍒椼旓紤錛岋紦銆曞悎騫舵垚鐨勪竴鍫嗙煶瀛愭槸鐢卞瓙搴忓垪銆旓紤錛岋紥銆曞拰絎笁鍫嗗悎騫惰屾潵鐨勩傝宑銆旓紤錛岋紥銆曪紳錛戯紝浠ヨ〃鏄庝簡瀛愬簭鍒椼旓紤錛岋紥銆曠殑鍚堝茍鏂規(guī)鏄錛戝爢鍚堝茍絎紥鍫嗐?br> 鐢辨鍊掓帹鍥炲幓錛屽緱鍑虹錛戯紝絎紥嬈″悎騫剁殑鏂規(guī)錛屾瘡嬈″悎騫跺緱鍒?
絎竴嬈″悎騫?錛?錛?錛?#8230;… 銆銆銆->錛?br> 絎簩嬈″悎騫?錛?錛?#8230;… ->錛戯紦
錛戯紦……
瀛愬簭鍒椼旓紤錛岋紦銆曠粡錛掓鍚堝茍鍚庡悎騫舵垚錛戝爢錛?錛掓鍚堝茍鐨勫緱鍒嗗拰錛濓紬錛嬶紤錛擄紳錛掞紣銆?br> 锝冦旓紨錛岋紦銆曪紳錛戯紝鍙煡鐢卞瓙搴忓垪銆旓紨錛岋紦銆曞悎騫舵垚鐨勪竴鍫嗙煶瀛愭槸鐢辯錛斿爢鍜屽瓙搴忓垪銆旓紩錛?br> 錛掋曞悎騫惰屾潵鐨勩傝宑銆旓紩錛岋紥銆曪紳錛戯紝鍙堣〃鏄庝簡瀛愬簭鍒椼旓紩錛岋紥銆曠殑鍚堝茍鏂規(guī)鏄錛曞爢鍚堝茍絎紪鍫嗐傜敱姝ゅ掓帹鍥炲幓錛屽緱鍑虹錛撱佺錛旀鍚堝茍鐨勬柟妗?
姣忔鍚堝茍寰楀垎錛?br> 絎笁嬈″悎騫?……錛曪紨 錛?nbsp; ->錛?
絎洓嬈″悎騫?……錛?錛?nbsp; ->錛戯紤
……錛戯紤
瀛愬簭鍒椼旓紨錛岋紦銆曠粡錛掓鍚堝茍鍚庡悎騫舵垚錛戝爢錛岋紥嬈″悎騫剁殑寰楀垎鍜岋紳錛栵紜錛戯紤錛濓紤錛椼?br> 絎簲嬈″悎騫舵槸灝嗘渶鍚庝袱鍫嗗悎騫舵垚錛戝爢錛岃嬈″悎騫剁殑寰楀垎涓猴紥錛斻?br> 鏄劇劧錛屼笂榪幫紩嬈″悎騫剁殑寰楀垎鎬誨拰涓烘渶灝?br> 錛掞紣錛嬶紤錛楋紜錛掞紨錛濓紪錛?/font>
涓婅堪鍊掓帹榪囩▼錛屽彲鐢變竴涓猵rint錛堛斿瓙搴忓垪銆曪級鐨勯掑綊綆楁硶鎻忚堪
procedure print 錛堛攊錛岋綂銆曪級
begin
if 锝娿堛夛紤 then 锝?jīng)鐟艟l掓帹鍚堝茍榪囩▼
begin
print錛堛攊錛宑銆攊錛宩銆曘曪紱锝?jīng)鍊掓帹瀛愬簭鍒楋紤鐨勫悎騫惰繃紼嬶綕
print錛堛攊錛媍銆攊錛宩銆曪紞錛戙昺od n錛嬶紤錛宩錛峜銆攊錛宩銆曪級
锝?jīng)鍊掓帹瀛愬簭鍒楋紥鐨勫悎騫惰繃紼嬶綕
for K錛氾紳錛?to N do锝?jīng)杈撳嚭褰撳墠琚悎迤堢殑涓ゅ爢鐭冲瓙锝?br> if 錛堢K鍫嗙煶瀛愭湭浠庡湀鍐呭幓闄わ級
then begin
if錛圞錛漣錛塷r錛圞錛漍錛塼hen緗K鍫嗙煶瀛愬緟鍚堝茍鏍囧織
else絎琄鍫嗙煶瀛愭湭琚悎騫訛紱
end錛涳經(jīng)then锝?br> 絎琲鍫嗙煶瀛愭暟←絎琲鍫嗙煶瀛愭暟錛嬬X鍫嗙煶瀛愭暟錛?br> 灝嗙X鍫嗙煶瀛愪粠鍦堝唴鍘婚櫎錛?br> end錛涳經(jīng)then锝?br> end錛涳經(jīng)print锝?br> 渚嬪錛岃皟鐢╬rint錛堛旓紤錛岋紪銆曪級鍚庣殑緇撴灉濡備笅錛?br> print錛堛旓紤錛岋紪銆曪級鈶?br> 鈹屸攢鈹鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹?br> print錛堛旓紤錛岋紦銆曪級鈶?nbsp; print錛堛旓紨錛岋紦銆曪級鈶?br> 鈹屸攢鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹?nbsp; 鈹屸攢鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹?br> print(銆旓紤錛岋紥銆?鈶?print(銆?錛?銆? print(銆?錛?銆? print(銆旓紩錛岋紥銆?鈶?br> 鈹屸攢鈹鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹?nbsp; 鈹屸攢鈹鈹鈹鈹鈹鈹粹攢鈹鈹鈹鈹鈹鈹?nbsp;
print錛堛?,1銆曪級 print錛堛?,1銆曪級 print錛堛?,1銆曪級
print錛堛?,1銆曪級
錛堝浘6.2-5錛?br> 鍏朵腑鍥炴函鑷?br> 鈶?鏄劇ず 錛?錛旓紪 錛?錛?
鈶?鏄劇ず 錛?錛栵紩 錛?錛?
鈶?鏄劇ず 錛戯紦 錛曪紨 錛?br> 鈶?鏄劇ず 錛戯紦錛?錛?br> 鈶?鏄劇ず 錛戯紦 錛戯紤
娉?璋冪敤print榪囩▼鍚庯紝搴旀樉紺猴紪鍫嗙煶瀛愮殑鎬繪暟浣滀負(fù)絎紩嬈″悎騫剁殑寰楀垎銆?/font>
Program Stones;
Type
Node = Record{褰撳墠搴忓垪鐨勫悎騫舵柟妗坿
c : Longint;{寰楀垎鍜寎
d : Byte{瀛愬簭鍒?鐨勫爢鏁皚
End;
SumType = Array [1..100,1..100] of Longint;
{sumtype[i,j]-瀛愬簭鍒梉i,j]鐨勭煶瀛愭繪暟}
Var
List : Array [1..100,1..100] of Node;
{list[i,j]-瀛愬簭鍒梉i,j]鐨勫悎騫舵柟妗坿
Date, Dt : Array [1..100] of Integer;
{Date[i]-絎琲鍫嗙煶瀛愭暟,Dt-鏆傚瓨Date}
Sum : ^SumType;{sum^[i,j]-鎸囧悜瀛愬簭鍒梉i,j]鐨勭煶瀛愭繪暟鐨勬寚閽坿
F : Text;{鏂囦歡鍙橀噺}
Fn : String;{鏂囦歡鍚嶄覆}
N, i, j : Integer;{N-鐭沖瓙鍫嗘暟,i,j-寰幆鍙橀噺}
Procedure Print(i, j : Byte);{閫掑綊鎵撳嵃瀛愬簭鍒梉i,j]鐨勫悎騫惰繃紼媫
Var
k, x : Shortint;{k-寰幆鍙橀噺;x-瀛愬簭鍒?涓鍫嗙煶瀛愮殑搴忓彿}
Begin
If j <> 1 Then Begin{緇х畫鍊掓帹鍚堝茍榪囩▼}
Print(i, List[i,j].d);{鍊掓帹瀛愬簭鍒?鐨勫悎騫惰繃紼媫
x := (i + List[i, j].d - 1) Mod N + 1;{姹傚瓙搴忓垪2涓鍫嗙煶瀛愮殑搴忓彿}
Print(x, j - List[i, j].d);{鍊掓帹瀛愬簭鍒?鐨勫悎騫惰繃紼媫
For k := 1 to N Do{杈撳嚭褰撳墠鍚堝茍絎琲鍫?絎瑇鍫嗙煶瀛愮殑鏂規(guī)}
If Date[k] > 0 Then Begin
If (i= k)or(x=k)Then Write(F, - Date[k], ' ')
Else Write(F, Date[k], ' ')
End; { Then }
Writeln(F);{杈撳嚭鎹㈣絎
Date[i] := Date[i] + Date[x];{鍘熺i鍫嗗拰絎瑇鍫嗗悎騫舵垚絎綁鍫唥
Date[x] := - Date[x]{灝嗗師絎瑇鍫嗕粠鍦堝唴鍘婚櫎}
End { Then }
End; { Print }
Procedure Main(s : Shortint);
Var
i, j, k : Integer;
t, x : Longint;
Begin
For i := 1 to N Do Begin{浠呭惈涓鍫嗙煶瀛愮殑搴忓垪涓嶅瓨鍦ㄥ悎騫秨
List[i, 1].c := 0;
List[i, 1].d := 0
End; {For}
For j := 2 to N Do{欏烘帹鍚?鍫?鍚?鍫?#8230;…鍚玁鍫嗙煶瀛愮殑鍚勫瓙搴忓垪鐨勫悎騫舵柟妗坿
For i := 1 to N Do Begin{褰撳墠鑰冭檻浠庣i鍫嗘暟璧?欏烘椂閽堟暟j鍫嗙殑瀛愬簭鍒梷
If s = 1 Then List[i, j].c := Maxlongint{鍚堝茍[i,j]瀛愬簭鍒楃殑寰楀垎鍜屽垵濮嬪寲}
Else List[i, j].c := 0;
t := Sum^[i, j];{鏈鍚庝竴嬈″悎騫剁殑寰楀垎涓篬i,j]瀛愬簭鍒楃殑鐭沖瓙鎬繪暟}
For k := 1 to j - 1 Do Begin{瀛愬簭鍒?鐨勭煶瀛愬爢鏁頒緷嬈¤冭檻1鍫?#8230;…j-1鍫唥
x := (i + k - 1) Mod N + 1;{姹傚瓙搴忓垪2棣栧爢搴忓彿}
If (s=1) And (List[i,k].c + List[x,j-k].c+t < List[i, j].c)
Or (s=2) And (List[i,k].c + List[x,j-k].c+t > List[i, j].c)
{ 鑻ヨ鍚堝茍鏂規(guī)涓虹洰鍓嶆渶浣?鍒欒涓媫
Then Begin
List[i, j].c := List[i, k].c + List[x, j - k].c + t;
List[i, j].d := k
End { Then }
End { For }
End; { For }
{鍦ㄥ瓙搴忓垪[1,N],[2,N],……,[N, N]涓夋嫨寰楀垎鎬誨拰鏈灝?鎴栨渶澶?鐨勪竴涓瓙搴忓垪}
k := 1; x := List[1, N].c;
For i := 2 to N Do
If (s = 1) And (List[i, N].c < x) Or (s = 2) And
(List[i, N].c > x) Then Begin
k := i; x := List[i, N].c
End; { Then }
Print(k, N);{鐢辨鍑哄彂,鍊掓帹鍚堝茍榪囩▼}
Writeln(F, Sum^[1, N]);{杈撳嚭鏈鍚庝竴嬈″皢鐭沖瓙鍚堝茍鎴愪竴鍫嗙殑鐭沖瓙鎬繪暟}
Writeln(F);
Writeln(list[k, N].c)
End; { Main }
Begin
Write('File name = ');{杈撳叆鏂囦歡鍚嶄覆}
Readln(Fn);
Assign(F, Fn);{璇ユ枃浠跺悕涓蹭笌鏂囦歡鍙橀噺榪炴帴}
Reset(F);{鏂囦歡璇誨噯澶噠
Readln(F, N);{璇誨叆鐭沖瓙鍫嗘暟}
For i := 1 to N Do Read(F, Date[i]);{璇誨叆姣忓爢鐭沖瓙鏁皚
New(Sum);{姹傛瘡涓涓瓙搴忓垪鐨勭煶瀛愭暟sum}
For i := 1 to N Do Sum^[i, 1] := Date[i];
For j := 2 to N Do
For i := 1 to N Do
Sum^[i, j] := Date[i] + Sum^[i Mod N + 1, j - 1];
Dt := Date;{鏆傚瓨鍚堝茍鍓嶇殑鍚勫爢鐭沖瓙,緇撴瀯鐩稿悓鐨勫彉閲忓彲鐩鎬簰璧嬪紏
Close(F);{鍏抽棴杈撳叆鏂囦歡}
Assign(F, 'OUTPUT.TXT');{鏂囦歡鍙橀噺涓庤緭鍑烘枃浠跺悕涓茶繛鎺
Rewrite(F);{鏂囦歡鍐欏噯澶噠
Main(1);{姹傚緱鍒嗗拰鏈灝忕殑鍚堝茍鏂規(guī)}
Date := Dt;{鎭㈠鍚堝茍鍓嶇殑鍚勫爢鐭沖瓙}
Main(2);{姹傚緱鍒嗗拰鏈澶х殑鍚堝茍鏂規(guī)}
Close(F){鍏抽棴杈撳嚭鏂囦歡}
鏈枃鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/lyflower/archive/2008/03/05/2150251.aspx