今天是新的開始,因為正式開始期末月倒數計時了。但是,今天還是沒有振作起來。六點醒來了一次,然後繼續睡了,七點醒來了一次,又繼續睡了,然後每個小時醒來一次,十點才正式下床。只能說,振作了一半,但是沒有完全振作起來,很是sad,繼續強有力的叫醒服務。
- 六級preparation
- 作業系統課程
- 作業系統文獻閱讀作業
- 軟體設計實驗報告
- 退役acmer的每日一題*8
- 明日規劃
六級preparation
[12:04]20個單詞,並開始磨耳朵練習
[16.41]15個單詞
[20:45]15個單詞
作業系統課程
[15:30] 差不多大致理解課題小測的作業,大概80%-90%上下的內容,當然轉換一個概念,對於我目前而言,還是有點hard。
作業系統文獻閱讀作業
[11:24] 打算今天完成的,還不知道能不能完成。
[20:30] 結合網上資料,全篇泛讀一遍,大意瞭解
[23:30] 準備精讀,看完第一頁,有點悟了。
軟體設計實驗報告
[13:00] 第一個實驗寫了一個開頭
退役acmer的每日一題*8
題目連結:https://atcoder.jp/contests/abc379/tasks/abc379_e
思路分析:給一個長度為n的數字字串,然後求所有子串的和的值是多少。首先,這題肯定不是讓你直接數學的加法,因為會超表示範圍。然後我們模仿豎式計算,肯定從最低位開始。然後發現最高位作為個位的個數是1,次高位是2,然後依次加一,然後最後結果的最低位就計算完畢了。接著,原先字串的最低位肯定不會作為高位進行計算,我們不妨刪去,然後次低位就變成了最低位,然後接著就是模仿上面的計算。即可得出結果。
有1說1,這種思維題,只要想到了,基本上就是速秒。但是如果想不到的話,就是痛苦面具,可能幾個小時也想不出來。所以得鍛鍊思維能力。
程式碼實現:
#include<bits/stdc++.h>
#define int long long
#define endl '\n'
#define ios ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)
using namespace std;
const int N=5e5+10;
const int MAX=1e6+5;
const int mod=1E9+7;
int n,m,k,w;
void solve(){
int n;
cin>>n;
string s;
cin>>s;
s=' '+s;
int c=0;
vector<int>a(n+1,0),ans(n+1,0);
for(int i=1;i<=n;i++){
a[i]=a[i-1]+(s[i]-'0')*i;
}
for(int i=n;i>=1;i--){
ans[i]=(a[i]+c)%10;
c=(c+a[i])/10;
}
if(c)
cout<<c;
for(int i=1;i<=n;i++){
cout<<ans[i];
}
}
signed main(){
ios;
int t;
t=1;
//cin>>t;
while (t--){
solve();
}
return 0;
}
明日規劃
首先,穩定心態。心態真的很容易崩潰。
第二,真得努力一把。往者不可諫,來者猶可追。
任務規劃如下:
(1)作業系統文獻精讀+腦圖製作+PPT 預計時間4h
(2)軟體設計實驗1的程式製作以及報告撰寫 3-4h
(3)軟體設計的大作業的規劃安排確定 1h以內
(4)六級閱讀 1h 單詞 1h 聽力有時間就放著聽 無上限
(5)科研重啟 2h maybe more
總計時間 11-12h